Re: Extended partition types with MicroSloth products

Alan Modra (alan@spri.levels.unisa.edu.au)
Wed, 18 Oct 1995 10:08:58 +0930 (CST)


> Perhaps my knowledge of FAT is dated (I learned the format in '81 or
> so and maybe it has been improved for 16-bit cluster numbers as
> opposed to 12-bit), but it keeps a single linked list of free clusters

No, not a linked list. It just marks free clusters in the FAT. This
means you automatically merge adjacent free blocks.

> -- files get clusters allocated from the front of the list, and
> deleted files have their clusters returned to the front of the list.

Not true on later versions of DOS. DOS remembers where the last
cluster was allocated, and starts scanning the FAT from that point.
Rebooting starts allocation from the beginning again. Linux does the
same on msdos partitions.

> This allocation scheme has the *inherently bad* affect of causing
> major fragmentation. Under DOS, performance really starts to suck
> when directories get fragmented, but I guess that's an implementation
> detail.
>
Actually, the really serious directory performance problem with DOS
occurs when directories get too large to fit in the file buffers.
Experiment with BUFFERS= in config.sys to see what I mean.

Not that I care about DOS :-)