File Allocation Table
La FAT (File Allocation Table), è la struttura cardine del file system di MS-DOS, tanto comune da essere supportato tuttora dai moderni sistemi operativi. Per estensione, il termine è passato a indicare il filesystem stesso nelle sue varie versioni: quindi si parla di filesystem FAT12 (il filesystem MS-DOS originale), FAT16 (versione estesa, dall'MS-DOS versione 4.0 in poi) e FAT32, la versione di filesystem FAT tuttora in uso.
La FAT in sè mantiene la traccia delle aree del disco disponibili e di quelle già usate dai file e dalle directory: la differenza fra FAT12, FAT16 e FAT32 consiste appunto in quanti bit sono allocati per numerare i cluster del disco. Con 12 bit, il filesystem può indirizzare al massimo 212 = 4096 cluster, mentre con 32 bit si possono gestire 232 = 4.294.967.296 cluster; l'aumento del numero di bit di indirizzo dei cluster si è reso necessario per gestire unità a disco sempre più grandi e capienti.
Il file system basato sulla FAT è semplice e sufficientemente robusto. Normalmente se il computer si blocca i dati del file system non sono persi.
La semplice struttura purtroppo porta ad una grande frammentazione dei file, in quanto per aggiungere una nuova sezione di un file, è necessario spostarsi tra la posizione in cui esistono le informazioni della struttura del file e la zona dove i dati vengono scritti, aggiornando entrambi le strutture.
Cluster
Un cluster è un gruppo di settori del disco, che contengono file e directory. La dimensione di un cluster è specificata nel Boot Record, e può variare da 1 a 16 settori (FAT12 e FAT16), o da 1 a 128 settori (FAT32).
Boot Record
Il Boot record è un'area riservata sul disco, nelle FAT12 e FAT16 ha una dimensione di 1 settore, mentre per la FAT32 è di 32 settori.
File Allocation Table
La struttura che contiene la tabella di allocazione dei file è semplice, infatti è un vettore contenente dati a 16 bit o 32 bit. Per una maggior sicurezza la FAT su disco ha due copie identiche. Un campo del boot record indica comunque quante copie della FAT esistono. Il sistema operativo manterrà la sincronia tra le varie FAT. La FAT è una semplice lista che punta a parti di disco assegnate a file o directory.
Se la prima tabella FAT si rovina, la seconda tabella diventa disponibile, e programmi come SCANDISK riescono a risolvere i problemi della prima tabella.
La directory radice contiene il famoso puntino ed il doppio puntino.
Area dati
L'area dati è divisa in cluster della stessa dimensione e contiene i file e le directory.
Nomi file
La classica struttura delle directory (prima di Windows NT e Windows 95) limitava i nomi dei file ad 8 caratteri con un'estensione di 3 (esempio: CONFIG.SYS).