Hi Paul,
> Linux coders are wrestling with NTFS support
> It seems to be very complicated thing.
It's very much like a database: lots of interlinked structures provide
metadata integrity. (metadata == filesystem structures)
> It seems that exact structure of NTFS is a secret
We've reverse-engineered a LOT of NTFS. There are still things we
don't understand, e.g. the journalling ($LogFile), but we can work
around that.
> Even if many things are already known, the driver can only read NTFS,
> otherwise it will SPOIL the partition.
We know enough to write code to write to an NTFS partition, safely.
The problem is finding the time to write such complicated code.
> ... Sysinternals ... wrapper ...
Very clever stuff.
I had considered the wrapper idea myself.
Anton didn't take any time in shooting me down :-)
> It will be:
> 1. Easier to do
Argh! Writing a wrapper for Linux would be a nightmare.
Either, you would have to write a wrapper for each version of ntfs.sys.
Or, write a generic wrapper like the sysinternals guys, which doesn't
do the complete job (it's good, but not perfect).
Also, ntfs.sys is a system driver and would have to be run at the kernel
level, we couldn't make a userspace version. This means if there's a
bug in our wrapper or Microsoft's driver, it would crash the machine.
> 2. Safer, because this is a standard driver from Microsoft
As long as we used ntfs.sys in the same way as Microsoft, i.e. we
translate the Linux VFS commands into Microsoft's, it should do the
right things to the disk. This would mean we'd have to be experts
in Windows internals.
As Andrew pointed out, we'd also have legal problems with using or
distributing Microsoft's files. At the moment RedHat won't supply the
Linux NTFS driver in their install because they're worried about patents
that we might be infringing. Adding MS technology would probably scare
off more distros.
And it gets worse. The proprietary part of the kernel driver would
taint the kernel, which means that any bug reports would be ignored by
the majority of kernel developers.
It was a nice thought :-)
Cheers,
FlatCap (Rich)
nt...@fl...
|