FAT16 e FAT32: caratteristiche e differenze

Il primo file system ad essere utilizzato in un sistema operativo Microsoft è stato il sistema FAT, che utilizza una tabella di allocazione dei file. Questa tabella è in realtà un indice che crea un elenco di contenuti del disco per registrare la posizione dei file sul disco. Poiché i blocchi che compongono un file non sono sempre memorizzati in modo contiguo sul disco (un fenomeno chiamato frammentazione), la tabella di allocazione consente di mantenere la struttura del file system creando collegamenti ai blocchi che compongono il file.

Il file system FAT16

Il sistema FAT è un sistema a 16 bit che consente di identificare i file con un nome composto da un massimo di 8 caratteri e un’estensione di 3 caratteri, questo è il motivo per cui il sistema è chiamato FAT16.

Gli indirizzi Cluster non possono essere più grandi di 16 bit. Il numero massimo di cluster che possono essere referenziati con il sistema FAT è quindi 216, (65536) cluster. Poiché un cluster è costituito da un numero fisso (4,8,16,32, …) di settori di 512 byte contigui, la dimensione massima della partizione FAT può essere determinata moltiplicando il numero di cluster per la dimensione di un cluster. Con cluster 32Kb, la dimensione massima di una partizione FAT è quindi 2GB.

Inoltre, un file può occupare solo un numero integrale di cluster, il che significa che se un file occupa più cluster, l’ultimo cluster sarà solo parzialmente occupato e lo spazio non occupato sarà inutilizzabile. Di conseguenza, minore è la dimensione del cluster, minore è lo spazio sprecato. Si stima che un file sprechi, in media, mezzo cluster, il che significa che su una partizione da 2 GB, 16 KB per file andranno persi.

La tabella di allocazione file

La tabella di allocazione file è un elenco di valori digitali che descrive l’allocazione dei cluster di una partizione. In altre parole, lo stato di ciascun cluster della partizione in cui si trova. Infatti, ogni cella della tabella di allocazione corrisponde a un cluster.

Ogni cella contiene un numero che indica se il cluster viene utilizzato da un file e la posizione del cluster successivo nel file. Infine, si finisce con una catena FAT, un elenco collegato di riferimenti che puntano ai cluster successivi fino alla fine del file. Ogni voce FAT è lunga 16 o 32 bit (a seconda che sia FAT16 o FAT32).

Le prime due voci memorizzano informazioni sulla tabella stessa, mentre le seguenti voci fanno riferimento ai cluster. Alcune voci possono contenere valori che indicano lo stato del cluster specifico.

Ad esempio, il valore 0000 indica che il cluster non viene utilizzato, FFF7 contrassegna un cluster non valido (in modo che non venga utilizzato) e i valori tra FFF8 e FFFF specificano che il cluster contiene la fine di un file. Ogni partizione contiene effettivamente due copie della tabella memorizzate contigue sul disco, in modo che possa essere recuperata se la prima copia viene danneggiata.

Il file system FAT32

Sebbene VFAT fosse un sistema intelligente, non affrontava i limiti di FAT16. Di conseguenza, un nuovo file system (e non solo una migliore gestione del FAT come nel caso di VFAT) è apparso con Windows 95 OSR2. Questo file system, chiamato FAT32 utilizza valori a 32 bit per le voci FAT. In effetti, vengono utilizzati solo 28 bit, poiché 4 bit sono riservati per un uso futuro.

Con la comparsa del file system FAT32, il numero massimo di cluster per partizione è passato da 65535 a 268.435.455 (228-1). FAT32 consente quindi partizioni molto più grandi (fino a 8 Terabyte). Anche se la dimensione teorica massima di una partizione FAT32 è 8 TB, Microsoft ha volontariamente limitato a 32 GB su sistemi Windows 9x per promuovere NTFS.

Poiché una partizione FAT32 può contenere molti più cluster di una partizione FAT16, è possibile ridurre significativamente le dimensioni dei cluster e quindi anche limitare lo spazio su disco sprecato. Ad esempio, con una partizione da 2 GB, è possibile utilizzare cluster 4KB con il sistema FAT32 (invece di cluster 32KB con FAT16), che riduce lo spazio sprecato di un fattore 8.

File system FAT16 o FAT32?

Poiché il numero di cluster è limitato, la dimensione massima di una partizione dipende dalla dimensione di ciascun cluster. Diamo un’occhiata alla dimensione massima della partizione in base alla dimensione del cluster e al file system utilizzato:

Cluster size FAT16 file system FAT32 file system
(theoretical)
512 bytes 32 MB 64 MB
1 KB 64 MB 128 MB
2 KB 128 MB 256 MB
4 KB 256 MB 8 GB
(1 TB)
8 KB 512 MB 16 GB
(2 TB)
16 KB 1 GB 32 GB
(4 TB)
32 KB 2 GB 2 GB
(8 TB)

Quando si formatta un disco rigido, potrebbe essere necessario decidere quale tipo di file system che si intende utilizzare e selezionare quella che fornisce una quantità di spazio disponibile che è il più vicino possibile alla dimensione desiderata.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.