NTFS driver (was: ReactOS GPL vs. proprietary drivers)

Jan Kratochvil lace at jankratochvil.net
Tue Oct 21 16:00:04 CDT 2003


Hi,

On Tue, 21 Oct 2003 22:38:41 +0200, Szakacsits Szabolcs wrote:
> On Tue, 21 Oct 2003, Jan Kratochvil wrote:
...
> > do not need to be understood for writing.
> 
> I guess you mean reading? Anyway it depends on the driver quality. All
> needs to be known for both read and write.

Not all information needs to be known for reading:


> For exmaple the block allocation bitmap is used for filesystem consistency
> check by ntfsresize.

Consistency is an addon useful feature although it is not required for
successful reading.


> > Sorry, I meant OS/2 HPFS/NTFS. The old story as the development of NT kernel
> > split between IBM and Microsoft at some point.
> 
> OS/2 wasn't open source.

I spoke about OS/2 as an example of a split NTFS development. As I hope you
agree it is not appropriate to split the development of NTFS filesystem in
a way incompatible with Microsoft Windows NT.


> > Filesystem must be the rock solid data storage structure. You must
> > know the meaning of each byte (*) for such reliable and interoperable
> > filesystem. 
> 
> Exactly. Every needed byte is known.

It may be true but at the start of my Captive NTFS project coding there was no
free implementation of read/write NTFS. As I do not trust reverse engineered
complex data structures for such sensitive content as the user data
I implemented the read/write NTFS in a way most reliable in my opinion.

BTW there is still no non-Captive free implementation of read/write NTFS.


"free" as my implementation is not "Free" as it is using proprietary drivers.
	"Free" as defined by: http://www.gnu.org/philosophy/free-sw.html

"free" as there exist commercial read/write NTFSes for GNU/Linux.
	VMware Workstation+W32 ($299+???), Paragon NTFS for Linux ($69.95)

...
> One of the unknown issues is journaling :) If volume is marked dirty,
> driver refuses to mount it (unless forced).

BTW my implementation will recover the journalled data by LFS (Log File System)
contained in the ntfs.sys with the support of Captive Cache Manager subsystem
featuring LSNs (Linear Sequence Numbers). But I admit the compatible
journalling is not much a requirement for GNU/Linux read/write NTFS.



Regards,
Lace

-- 
Jan Kratochvil; http://www.jankratochvil.net/



More information about the wine-devel mailing list