File Allocation Table: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
formattazione... |
||
Riga 51:
Con l'annuncio della [[Microsoft]] del cessato supporto a [[MS-DOS]] nel 1994 e l'introduzione del [[NTFS]] in tutti i sistemi operativi prodotti, è improbabile che venga sviluppata una nuova versione del FAT. Vista però l'estrema diffusione del FAT nei [[floppy disk]], nelle [[memoria flash|memorie flash]] o nei drive [[USB]] ed essendo molto limitato il supporto del NTFS nei sistemi operativi non Microsoft, probabilmente questo file system verrà utilizzato ancora a lungo. Con la commercializzazione di Windows Vista SP1 e Windows CE 6.0, la Microsoft presenta l'[[exFAT]] detta anche [[ExFAT|FAT64]] utilizzato prevalentemente per memorie flash.
=== Cronologia delle versioni ===▼
Esistono varie versioni di questo [[file system]], in base a quanti [[bit]] sono allocati per numerare i cluster del disco: FAT12, FAT16, FAT32. Esiste anche una versione del FAT16 detta VFAT, che è virtuale cioè non registrato fisicamente sull'[[hard disk]], ma gestito da un software specifico.▼
==== FAT12 ====▼
La prima versione del FAT fu la '''FAT12''', un file system per [[floppy disk]] i cui indirizzi per i cluster erano appunto a 12 [[Bit (informatica)|bit]] (lunghezza non standard, quindi manipolare il FAT era un po' più complicato) e per questo poteva gestire dischi grandi al massimo 32 MB. Ma visto che i dischi dell'epoca erano grandi al massimo 160 KB questi limiti non vennero mai sentiti. La prima versione del FAT12 non supportava le [[directory]] ad albero, che vennero introdotte con l'MS-DOS 2.0 e i dischetti da 360KB.▼
Nel [[1984]] la IBM rilasciò i PC AT, con un [[hard disk]] di 20 MB. In parallelo [[Microsoft]] introdusse l'MS-DOS 3.0 ed una versione del FAT con indirizzi per i cluster a 16 [[bit]], permettendo fino a 65.536 cluster e portando il limite di grandezza teorico a 512MB. Comunque il numero massimo di settori e la dimensione massima (di una [[partizione (informatica)|partizione]], non più di un disco) non cambiò e rimase di 32 MB.▼
==== FAT16 ====▼
Nel [[1987]] arrivò il formato che ora viene chiamato ''FAT16'': introdotti dal Compaq DOS 3.31, nel [[1988]] i miglioramenti arrivarono anche con l'[[MS-DOS]] 4.0. La dimensione delle partizione venne limitata dalla dimensione di 8-bit dei settori per cluster, che potevano avere fino a 64 settori, dando cluster di 32 KB con la solita dimensione di 512 [[byte]] per settore, fissando il limite "definitivo" per una partizione FAT16 a 2 GB. Più tardi, [[Windows NT]] aumentò la dimensione massima dei cluster a 64K (considerando il contatore come ''unsigned'', senza segno), ma il risultato non era compatibile con le altre implementazioni del FAT del tempo, e cluster di tale grandezza portavano a sprecare molto spazio per la frammentazione interna.▼
==== VFAT ====▼
Per supportare i nomi dei file lunghi, venne introdotto in [[Windows 95]] il '''VFAT''' ('''V'''irtual '''FAT'''), che prende il nome dal driver della periferica. L'implementazione modificava il modo in cui il [[file system]] organizzava i contenuti di una [[directory]]. L'uso delle specifiche '''VFAT''' permette di usare sia nomi lunghi (fino a 255 caratteri [[UTF-16]]) che nomi brevi ([[formato 8.3|8+3]] caratteri) in maniera trasparente alle diverse versioni di Windows.▼
==== FAT32 ====▼
Per superare i limiti sulla dimensione dei volumi imposta dal FAT16, [[Microsoft]] decise di creare un nuovo FAT chiamato '''FAT32''', con numeri per i cluster da 32 bit, anche se in realtà ne vengono utilizzati solo 28.▼
In teoria questo dovrebbe permettere {{M|268435456}} (2<sup>28</sup>) cluster, cioè una dimensione totale dell'ordine dei 2 TiB con cluster di 8 KiB, ma a causa delle limitazioni da alcune versioni dell'utility scandisk non è permesso al FAT di superare i {{M|4 177 920}} (< 2<sup>22</sup>) cluster, riducendo la dimensione massima a 124,55 [[gigabyte]]. Le utility di formattazione e partizionamento di [[Windows 2000]] e [[Windows XP|XP]] hanno un limite di 32 GB per le [[partizione (informatica)|partizioni]] FAT32,<ref>[https://support.microsoft.com/kb/184006/ Limiti del file system FAT32 in Windows 2000]</ref><ref>[https://support.microsoft.com/kb/314463/ Limiti del file system FAT32 in Windows XP]</ref> ma è un limite arbitrario: avviando un computer con un floppy disc di boot basato su sistema operativo FAT32 (es.: windows 98) è infatti possibile partizionare in FAT32 oltre i 32 gigabyte, inoltre [[utility]] di terze parti<ref>[http://www.ridgecrop.demon.co.uk/index.htm?fat32format.htm Ridgecrop Consultants Ltd, FAT 32 Formatter]</ref> possono tranquillamente creare e gestire partizioni FAT32 fino a 1 TB; esistono in commercio hard disk esterni di 1 TB formattati in FAT32. Con il FAT32 la dimensione del singolo file non può essere superiore ai 4 GB. Questo perché esiste una voce a 32 bit che indica la grandezza del file in byte.▼
L'ultima versione di [[Microsoft Windows]] che usa questo [[file system]] è [[Windows Me]] (Millennium Edition). Le versioni successive lo supportano in aggiunta al [[file system]] [[NTFS]], più che altro per la formattazione di pendrive, schede di memoria e altri dispositivi mobili.▼
==== ExFAT ====▼
{{Vedi anche|ExFAT}}▼
[[ExFAT]] è un [[file system]] introdotto da [[Microsoft]] nel 2006 con [[Windows Embedded CE 6.0]], pensato appositamente per [[memoria flash|memorie flash]] e, in generale, per dispositivi di archiviazione dalle dimensioni fino a 16 [[exabyte]]s.▼
== Descrizione ==
Line 205 ⟶ 230:
|}
Nel caso in cui si tratta di un file di tipo etichetta di volume o directory padre (..) i 6 byte all'offset 0x1A sono impostati a zero.
▲=== Cronologia delle versioni ===
▲Esistono varie versioni di questo [[file system]], in base a quanti [[bit]] sono allocati per numerare i cluster del disco: FAT12, FAT16, FAT32. Esiste anche una versione del FAT16 detta VFAT, che è virtuale cioè non registrato fisicamente sull'[[hard disk]], ma gestito da un software specifico.
▲=== FAT12 ===
▲La prima versione del FAT fu la '''FAT12''', un file system per [[floppy disk]] i cui indirizzi per i cluster erano appunto a 12 [[Bit (informatica)|bit]] (lunghezza non standard, quindi manipolare il FAT era un po' più complicato) e per questo poteva gestire dischi grandi al massimo 32 MB. Ma visto che i dischi dell'epoca erano grandi al massimo 160 KB questi limiti non vennero mai sentiti. La prima versione del FAT12 non supportava le [[directory]] ad albero, che vennero introdotte con l'MS-DOS 2.0 e i dischetti da 360KB.
▲Nel [[1984]] la IBM rilasciò i PC AT, con un [[hard disk]] di 20 MB. In parallelo [[Microsoft]] introdusse l'MS-DOS 3.0 ed una versione del FAT con indirizzi per i cluster a 16 [[bit]], permettendo fino a 65.536 cluster e portando il limite di grandezza teorico a 512MB. Comunque il numero massimo di settori e la dimensione massima (di una [[partizione (informatica)|partizione]], non più di un disco) non cambiò e rimase di 32 MB.
▲=== FAT16 ===
▲Nel [[1987]] arrivò il formato che ora viene chiamato ''FAT16'': introdotti dal Compaq DOS 3.31, nel [[1988]] i miglioramenti arrivarono anche con l'[[MS-DOS]] 4.0. La dimensione delle partizione venne limitata dalla dimensione di 8-bit dei settori per cluster, che potevano avere fino a 64 settori, dando cluster di 32 KB con la solita dimensione di 512 [[byte]] per settore, fissando il limite "definitivo" per una partizione FAT16 a 2 GB. Più tardi, [[Windows NT]] aumentò la dimensione massima dei cluster a 64K (considerando il contatore come ''unsigned'', senza segno), ma il risultato non era compatibile con le altre implementazioni del FAT del tempo, e cluster di tale grandezza portavano a sprecare molto spazio per la frammentazione interna.
▲=== VFAT ===
▲Per supportare i nomi dei file lunghi, venne introdotto in [[Windows 95]] il '''VFAT''' ('''V'''irtual '''FAT'''), che prende il nome dal driver della periferica. L'implementazione modificava il modo in cui il [[file system]] organizzava i contenuti di una [[directory]]. L'uso delle specifiche '''VFAT''' permette di usare sia nomi lunghi (fino a 255 caratteri [[UTF-16]]) che nomi brevi ([[formato 8.3|8+3]] caratteri) in maniera trasparente alle diverse versioni di Windows.
▲=== FAT32 ===
▲Per superare i limiti sulla dimensione dei volumi imposta dal FAT16, [[Microsoft]] decise di creare un nuovo FAT chiamato '''FAT32''', con numeri per i cluster da 32 bit, anche se in realtà ne vengono utilizzati solo 28.
▲In teoria questo dovrebbe permettere {{M|268435456}} (2<sup>28</sup>) cluster, cioè una dimensione totale dell'ordine dei 2 TiB con cluster di 8 KiB, ma a causa delle limitazioni da alcune versioni dell'utility scandisk non è permesso al FAT di superare i {{M|4 177 920}} (< 2<sup>22</sup>) cluster, riducendo la dimensione massima a 124,55 [[gigabyte]]. Le utility di formattazione e partizionamento di [[Windows 2000]] e [[Windows XP|XP]] hanno un limite di 32 GB per le [[partizione (informatica)|partizioni]] FAT32,<ref>[https://support.microsoft.com/kb/184006/ Limiti del file system FAT32 in Windows 2000]</ref><ref>[https://support.microsoft.com/kb/314463/ Limiti del file system FAT32 in Windows XP]</ref> ma è un limite arbitrario: avviando un computer con un floppy disc di boot basato su sistema operativo FAT32 (es.: windows 98) è infatti possibile partizionare in FAT32 oltre i 32 gigabyte, inoltre [[utility]] di terze parti<ref>[http://www.ridgecrop.demon.co.uk/index.htm?fat32format.htm Ridgecrop Consultants Ltd, FAT 32 Formatter]</ref> possono tranquillamente creare e gestire partizioni FAT32 fino a 1 TB; esistono in commercio hard disk esterni di 1 TB formattati in FAT32. Con il FAT32 la dimensione del singolo file non può essere superiore ai 4 GB. Questo perché esiste una voce a 32 bit che indica la grandezza del file in byte.
▲L'ultima versione di [[Microsoft Windows]] che usa questo [[file system]] è [[Windows Me]] (Millennium Edition). Le versioni successive lo supportano in aggiunta al [[file system]] [[NTFS]], più che altro per la formattazione di pendrive, schede di memoria e altri dispositivi mobili.
▲=== ExFAT ===
▲{{Vedi anche|ExFAT}}
▲[[ExFAT]] è un [[file system]] introdotto da [[Microsoft]] nel 2006 con [[Windows Embedded CE 6.0]], pensato appositamente per [[memoria flash|memorie flash]] e, in generale, per dispositivi di archiviazione dalle dimensioni fino a 16 [[exabyte]]s.
== Note ==
|