File Allocation Table (FAT) is a file system that was
developed for MS-DOS and is the primary file system for consumer
versions of Microsoft Windows up to and including Windows ME.
The FAT file system is considered relatively uncomplicated, and
because of that, it is a popular format for floppy disks; moreover,
it is supported by virtually all existing operating systems for
personal computers, and because of that, it is often used to share
data between several operating systems booting on the same computer
(a multi-boot environment). It is also used on solid-state memory
cards and other similar devices. It has a serious drawback in that
when files are deleted and new files written to the media, the files
can become scattered over the entire media making reading and
writing a slow process. De-fragmentation is one solution to this,
but is often a lengthy process in itself and has to be repeated
regularly to keep the FAT file system clean.
FAT is also called 12-bit FAT, the file allocation table (FAT) for a
floppy disk. The location of
files on a floppy disk are listed in a one-column table in the FAT.
Because the width of each entry in a floppy disk column is 12 bits,
the FAT is called FAT12. As a file
system for floppy disks, it had a number of limitations: no support
for hierarchical directories, cluster addresses were "only" 12-bits
long (which made the code manipulating the FAT a bit tricky) and the
disk size was stored as a 16-bit count of sectors, which limited the
size to 32MB.