Chiavette USB e FileSystem

imageNormalmente le chiavette USB vengono commercializzate già preformattate con File System FAT32 perché siano compatibili col maggior numero di dispositivi (autoradio, stereo, console, etc…) e sistemi operativi (Windows, Linux, MAC OS, etc…).

Se si prova a formattare una chiavetta USB tramite Windows 7 si nota che i formati che possono essere utilizzati sono tre: FAT32 (introdotto con MS-DOS 7.1 / Windows 95 OSR2 nel 1996), NTFS (introdotto con Windows NT 3.1 nel 1993) e exFAT (file system proprietario progettato per drive flash, sviluppato da Microsoft e introdotto con Windows Embedded CE 6.0 nel 2006).

A mio parere il motivo che ci può spingere a cambiare il file system della chiavetta è quello di poter supportare file di dimensioni superiori a 4GB che il file system FAT32 non supporta, per un elenco delle varie funzionalità del diversi file system si veda il seguente File System Functionality Comparison da cui di seguito riporto la tabelle dei limiti:

image

Quindi per superare la dimensione massima di 4GB del file possiamo scegliere NTFS o exFAT quest’ultimo è stato di fatto progettato per essere il successore della FAT32, ma essendo per così dire relativamente “giovane” potrebbe non essere supportato su alcuni dispositivi o sistemi operativi. Ad esempio per poter utilizzare chiavette USB formattate con exFAT su Windows XP o Windows Server 2003 occorre la KB 955704 – Pacchetto di aggiornamento della descrizione del driver del file system exFAT.

Di seguito alcune considerazioni sul supporto NTFS:

  • Supportato in Windows NT 3.1 e successivi
  • Mac OS X 10.3 e successivi supportano NTFS in sola lettura
  • Linux con la versione 2.2.0 del kernel e successivi supportano NTFS in lettura e scrittura

Di seguito alcune considerazioni sul supporto ExFAT:

  • Supportato in Windows XP\Windows Server 2003 e successivi
  • Mac OS X Snow Leopard 10.6.5 e successivi supportano exFAT in lettura e scrittura
  • Al momento il kernel linux non supporta ufficialmente exFAT dal momento che questo file system è coperto da alcuni brevetti. In ogni caso esiste un progetto per l’implementazione di exFat come modulo di FUSE.

Conclusioni

Se occorre gestire file con dimensione superiore a 4GB occorre formattare la chiavetta USB con un file system diverso da FAT32, la scelta più corretta sarebbe l’exFAT in quando progettato per drive flash e naturale successore del FAT32, ma la scelta tra NTFS e exFAT va fatta in base su quali dispositivi e sistemi operativi pensiamo di utilizzare la chiavetta USB.