On Thu, 2004-02-26 at 16:05, Szakacsits Szabolcs wrote:
> On Thu, 26 Feb 2004, Anton Altaparmakov wrote:
> > > Secondly and most importantly, you _need_ Windows to do this. And that's
> > > silly :-)
> >
> > True. But then maybe we need a utilitiy that can upgrade ntfs 1.2 to
> > 3.x rather than having mkntfs create 3.x.
>
> I don't think so. For me it seems to be
>
> - more difficult
Certainly true.
> - more error-prone
True as well.
> - "everybody" uses or will use XP/W2K/Longhorn (version 3.1), why
> the pain for the conversion, e.g. when in [qt]parted, diskdrake,
> etc one wants to create an NTFS.
I disagree about the "everybody" but I guess long term that is going to
happen. But why would anyone ever want to create an ntfs partition
while installing Linux? Seems to me only NTFS developers might ever
want to do that...
> - it would mean more work for development, e.g. for tests we should
> always do the two steps 'mkntfs + ntfsconvert' instead of just
> 'mkntfs' and this is the most important at present since we
> don't have much free time. Of course we could wrap them by a
> script, just sometimes forget about it, etc, etc.
mkntfs could just internally call tunentfs to switch the format. After
all it only involves changing three bytes on the partition so is a
trivial operation. Could even be done in a almost trivial library
function...
> In short it would be more useless and resource demanding for us, who has
> very limited free time anyway.
>
> > After all you might already have data on the partition and don't want
> > to backup, mkntfs, restore...
>
> Very, very, low priority, at least for me. To be honest I'm not interested
> at all.
Neither am I in creating mkntfs that makes NTFS 3.1 partitions as I
don't see any point for having it. (-;
> However what I'm interested in is to have the basic tools to foster the
> development. ntfsresize soon ready, then write is coming, ntfstouch,
> finish/revise ntfstruncate, etc.
>
> We need the _tools_ to make regression testing and debugging as easy and
> fast as possible and at present we have neither mkntfs 3.x nor ntfsdebug,
Just add an option to mkntfs to allow creation of ntfs 3.0 and 3.1 and
then modify the mkntfs code that generates $Volume. In the
VOLUME_INFORMATION attribute need to write the correct major_ver and
minor_ver depending on which version you want to create and in the flags
you need to set the bit VOLUME_MOUNTED_ON_NT4 and possibly you might
want to set VOLUME_UPGRADE_ON_MOUNT, too.
You might even be able to get away with leaving the version to 1.2 and
only setting the VOLUME_UPGRADE_ON_MOUNT flag. That may be sufficient
to force all windows versions to upgrade the volume at mount time. (I
haven't tested whether this happens or not when this bit is set.)
And magic you have a ntfs 3.x volume.
Amount of coding effort needed is < half an hour. Amount of testing
needed is huge and I don't have the time I am afraid. Nor do I have
Windows 2003 / later to test with even if I did have the time.
About ntfsdebug, yes I agree it would be very useful but no I don't have
the time to write it. Although I would much rather have a ntfsdiskedit
rather than an ntfsdebug but perhaps you meant the same thing...
> the two most important tools for any serious filesystem development (and
> ntfs is being one of the most complex in the world).
>
> > I have always found these [IN|OUT] things confusing and obfuscating.
> > It's quite clear from the code what they are...
>
> Actually, it's not always clear from your code, at least for me ;)
>
> If you were writing short, easy to read and revise functions then it would
> be close to redundant but often you write code being very-very long and
> hard to see _immediately_ its purpose and correctness.
Yes, I tend to write long functions. I find it easier to follow than
having to jump around looking for what various tiny functions do. Feel
free to submit patches for making functions smaller if it would make the
code clearer to others... (-;
Best regards,
Anton
--
Anton Altaparmakov <aia21 at cam.ac.uk> (replace at with @)
Unix Support, Computing Service, University of Cambridge, CB2 3QH, UK
Linux NTFS maintainer / IRC: #ntfs on irc.freenode.net
WWW: http://linux-ntfs.sf.net/ &
http://www-stu.christs.cam.ac.uk/~aia21/
|