Partition versus File System question

Lennart Sorensen lsorense-1wCw9BSqJbv44Nm34jS7GywD8/FfD2ys at public.gmane.org
Wed Feb 27 21:14:24 UTC 2008


On Wed, Feb 27, 2008 at 01:26:15PM -0500, Madison Kelly wrote:
> FAT (and it's variants), specifically.
> 
> What exactly is the difference between say the 'FAT16 Initial' partition 
> identified as '04h' and the file system by the same name? Is the same 
> piece of software responsible for both roles?
> 
> Ditto question with 'FAT16 Extended' (05h), 'FAT16 Final' (06h) and so on.

DOS had some strange ideas of how to work with filesystems.

The filesystem itself that deals with storage of files, clusters,
directories, filenames, permissions, etc is FAT12, FAT16 and FAT32 where
the number is the size of the cluster table (file allocation table).

With FAT12 a maximum filesystem size is 32MB.  FAT16 allows up to 2GB on
systems that use signed intergers (like DOS and Win 9x), and 4GB for
those using unsigned (like windows NT4).  FAT32 allows lots, although no
version of windows will permit you to create one larger than 32GB
although they will happily use it if you create it using mkdosfs under
linux or other system.

The partition IDs are used to tell DOS and friends how to deal with the
partition.  The ones I can see that have been used are:
01: FAT12
04: FAT16 on a partition less than 32MB (this used smaller clusters so
    the disk space could be used more efficiently than FAT12)
06: FAT16
0E: FAT16 LBA which is used when the partition is beyond where CHS
(cylinder/head/sector) access was possible with BIOS calls.  This
requires INT13X BIOS support, and an OS that supports LBA (like win 9x
but not pure DOS like 6 and below)
0B: FAT32
0C: FAT32 LBA (like FAT16 LBA above)

Extended partitions like 05 and 0F are just used to create a large
partition which contains another partition table at the start so you can
create more than 4 partitions on a system by daisy chaining partition
tables.  The partition table in an extended partition always contains
one primary partition which is a logical partition to the system, and
one additional extended partition to contain the remainder of the chain
which then starts with an additional partition table, and so on until
all the logical partitions have been defined.  The 0F version simply
says it requires LBA mode to access that part of the disk, while 05 does
not require LBA mode.

There is no good reason to need partitions IDs since you can just read
the filesystem and match against known types, which is what linux and
most other modern systems do.  DOS and win9x weren't that smart though.

--
Len Sorensen
--
The Toronto Linux Users Group.      Meetings: http://gtalug.org/
TLUG requests: Linux topics, No HTML, wrap text below 80 columns
How to UNSUBSCRIBE: http://gtalug.org/wiki/Mailing_lists





More information about the Legacy mailing list