File Allocation Table

A File Allocation Table (FAT) is the component of an older MS-DOS or Windows file system which describes the files, directories, and free space on a storage medium, such as a floppy disk, hard disk or USB drives.

Description
A disk is divided into partitions. Under a FAT file system, each partition is divided into clusters, each of which can be one or more sectors, depending on the size of the partition. Each cluster is either allocated to a file or directory, or it is free (unused). A directory lists the name, size, modification time and starting cluster of each file or subdirectory it contains.

At the start of each partition is a table (the FAT) with one entry for each cluster. Each entry gives the number of the next cluster in the same file or a special value for "not allocated" or a special value for "this is the last cluster in the chain". The first few clusters after the FAT contain the root directory.

History
The FAT file system was introduced by Microsoft in 1977 and indexed 6.3 filenames (6 characters and a 3-letter extension) with 8-bit addressing. In MS-DOS, this was upgraded to a 12-bit catalog (FAT12) which allowed 8.3 filenames, like the operating system. In MS-DOS 4, an incompatible 16-bit FAT (FAT16) with 32-kilobyte (KB) clusters was introduced that allowed partitions of up to 2 gigabytes (GB). Microsoft later created FAT32 to support partitions larger than two gigabytes and pathnames greater that 256 characters. It also allows more efficient use of disk space since clusters are four kilobytes rather than 32 kilobytes. FAT32 was first available in OEM Service Release 2 of Windows 95 in 1996. It is not fully backward compatible with the 16-bit and 8-bit FATs.


 * FAT12 — 12 bits per cluster, up to 4,068 files
 * FAT16 — 16 bits per cluster, up to 65,460 files
 * FAT32 — 32 bits per cluster, up to 268,173,300 files
 * exFAT — up to 32 MB per cluster, up to 4,294,967,285 files

With Windows NT, FAT32 was replaced by as the default file system. The Extensible File Allocation Table (exFAT) was intended for removable media and supports volumes over 32 gigabytes (GB) in size.

Mac support
Support for FAT-formatted floppy disks was introduced in 1988 with the FDHD "SuperDrive" in the Macintosh IIx. PC files could be transferred to classic Mac OS with Apple File Exchange, later superseded by PC Exchange. FAT and exFAT support was built into Mac OS X. Disk Utility can format external drives in these formats for use with macOS.