[net.micro.pc] links in DOS

markz@microsoft.UUCP (Mark Zbikowski) (08/19/85)

> [The question is whether, under MS-DOS, one can give a file multiple names
> as with the Unix link call.]
>
> Yes, you can, but no, you shouldn't.  It is fairly easy to patch a DOS
> directory so that you have more than one name pointing to the same chain
> of disk blocks.  It's a bad idea, though, because DOS doesn't expect there to
> be more than one name for a file and if you delete any of the names, all of
> the blocks for the file will be marked free and reused.

The main problem with doing this is that when DOS needs to update a directory
entry (grow a file, change last-mod time) it needs to be able to QUICKLY
locate the directory entry.  If there are several directory entries the task
of finding them is much more difficult.  Linking them together is not
reasonable; trying to repair such problems after a crash is difficult at best.

slerner@sesame.UUCP (Simcha-Yitzchak Lerner) (08/21/85)

>> [The question is whether, under MS-DOS, one can give a file multiple names
>> as with the Unix link call.]
>>
>> Yes, you can, but no, you shouldn't.  It is fairly easy to patch a DOS
>> directory so that you have more than one name pointing to the same chain
>> of disk blocks.  It's a bad idea, though, because DOS doesn't expect there to
>> be more than one name for a file and if you delete any of the names, all of
>> the blocks for the file will be marked free and reused.
> 

An even worse problem than deleting, is that any change to the file size/date
stamp will only be updated in ONE directory!  Even though the proper FAT chain
will be pointed to, if the file length is off you can kiss your data good-bye.

If you really miss UN*X so much, dump DOS and rig up an emulator to allow
dos programs to run under UN*X.


-- 
Opinions expressed are public domain, and do not belong to Lotus
Development Corp.
----------------------------------------------------------------

Simcha-Yitzchak Lerner

              {genrad|ihnp4|ima}!wjh12!talcott!sesame!slerner
                      {cbosgd|harvard}!talcott!sesame!slerner
                                slerner%sesame@harvard.ARPA