Systèmes de fichiers : FAT12 à 32 et exFAT, conçus pour le grand public
-
=> Article complet : nextinpact.com <=
Un bout de chemin parcouru
Les systèmes de fichiers FAT32 et exFAT sont très utilisés pour les supports amovibles. Et pour cause : tous les systèmes d’exploitation aujourd’hui savent les lire et écrire. Voici donc les caractéristiques et le fonctionnement de ces deux systèmes de fichiers. Les NTFS et ReFS seront l’objet de l’article suivant.
La FAT (File allocation table) est le plus ancien système de fichiers de Microsoft. Imaginez : la première version a été développée par Bill Gates et Marc McDonald en 1977, essentiellement pour les disquettes de 5,25 pouces de 160 ko.
Ce système de fichiers avait pour lui sa très grande simplicité de conception, comprenant le secteur d’amorçage, les tables d’allocation elles-mêmes ainsi que le répertoire racine, dans lequel on trouve toutes les données. À cette époque, on ne parle pas encore d’arborescence, car les dossiers n’existent pas (ils n’arriveront que dans MS-DOS 2.0).
Il apparait vite cependant que la FAT d’origine doit évoluer pour accompagner les améliorations matérielles : l’augmentation du stockage sur les disquettes et, surtout, l’arrivée des disques durs. Comme indiqué dans notre premier article, la taille du stockage peut changer la manière dont un système de fichiers le découpe en blocs.
Lire notre dossier sur les systèmes de fichiers :
- | Qu’est-ce qu’un système de fichiers ?
- | Systèmes de fichiers : FAT12 à 32 et exFAT, conçus pour le grand public
- | Systèmes de fichiers : NTFS et ReFS, pensés d’abord pour l’entreprise
- | Systèmes de fichiers : de HFS et ses évolutions à APFS chez Apple
- | Systèmes de fichiers : ext4 et Btrfs, les « frères ennemis » du monde Linux
La première FAT fut renommée FAT12 quand la FAT16 fut proposée en 1984. L’ajout de ce chiffre venait signaler une information simple : le nombre de bits consacrés au codage des numéros d’unités d’allocation. Cette taille entrainait des répercussions directes sur plusieurs caractéristiques cruciales du système de fichiers. Avec la FAT12, on ne pouvait ainsi avoir que 4 096 blocs en théorie, bien qu’en pratique on soit à 4 084. La taille de ces derniers déterminait ensuite la taille maximale de la partition : de 2 Mo pour des blocs de 512 octets à 16 Mo pour des blocs de 4 ko.
La FAT16, elle, codait les numéros d’unités sur 16 bits, et donc 65 536 blocs. Autrement dit, un périphérique de stockage est découpé en 65 536 « morceaux » en FAT16 contre 4 096 en FAT12. Son arrivée a permis d’aller bien au-delà des 16 Mo maximaux de la FAT12, la nouvelle limite s’établissant à 2 Go, et même 4 Go avec l’arrivée plus tard de Windows NT 4 .0.
Cependant, cette taille dépendait directement du choix pour la taille des blocs. Voici quelques exemples :
- 512 octets : 32 Mo maximum
- 1 ko : 64 Mo maximum
- 4 ko : 256 Mo
- 16 ko : 1 Go
- 32 ko : 2 Go
Dans notre précédent article, nous expliquions le délicat équilibre entre taille de la partition et type de données. Un fichier ne peut en effet occuper qu’un nombre entier de blocs. Si vous utilisiez par exemple un fichier de 34 ko sur une partition de 2 Go en FAT16, il fallait alors deux blocs, ce qui provoquait une perte de 30 ko. Les grandes tailles de blocs conviennent ainsi mieux aux données volumineuses (l’exFAT a par exemple été pensée pour le stockage des appareils photos numériques).
L’une des plus grosses limitations de ces deux premières FAT était la nomenclature des fichiers, qui établissait la fameuse règle « 8.3 » : huit caractères, un point, puis trois caractères. La première partie était simplement appelée le préfixe, les trois derniers « l’extension », le tout formant le « nom ». Cette convention a persisté jusqu’à une évolution de la FAT32, dont nous allons maintenant parler.
FAT32, une évolution majeure
Après un codage des unités d’allocation sur 12 et 16 bits, la FAT32 débarque en 1996 (12 ans après la FAT16 donc) avec un codage sur… 28 bits. Son arrivée provoque plusieurs changements importants dans la manière dont le stockage est considéré sous MS-DOS et Windows. Précisons qu’au lancement de Windows 95, c’est encore la FAT16 qui règne en maître. La prise en charge de la FAT32 est intégrée à la révision OSR2 du système.
Le codage sur 28 bits apporte tout d’abord une envolée dans les tailles maximales : 4 Go pour les fichiers et 2 To pour les partitions. Des chiffres si supérieurs à ceux de la FAT16 que la FAT32 a pu rester en place pendant de nombreuses années. Pour le grand public, la question du passage à NTFS ne s’est en effet pas posée avant Windows XP en 2001, ou même Vista en 2006. Mais attention : en dépit de cette taille limite de 2 To pour les partitions, les outils intégrés de Microsoft ne dépassaient pas 32 Go. Des logiciels tiers permettaient de s’affranchir de cette limite.
La FAT32 a eu d’autres impacts tout aussi concrets. D’abord, un nombre maximal de fichiers par partition de 268 435 456 ainsi qu’un maximum de 65 534 fichiers par dossier. Si ce dernier nombre vous paraît curieux – pourquoi pas 65 536 ? – il faut savoir que deux entrées étaient réservées pour indiquer le dossier courant et le dossier parent.
Les personnes ayant vécu l’arrivée de la révision OSR2 de Windows 95 se souviennent sans doute de deux conséquences très positives de cette mise à jour. D’abord, une plus grande quantité d’espace disponible. Il ne s’agissait pas de compression, mais d’une réduction importante de la taille des blocs. En FAT16 par exemple, une partition de 1 Go nécessitait des blocs de 16 ko. En FAT32, la même partition utilise des blocs de 4 ko (valables jusqu’aux partitions de 1 To). En clair, dans la plupart des cas, l’impact a été très positif, puisque l’espace perdu a été drastiquement réduit, provoquant une augmentation significative de l’espace disponible.
Enfin des noms longs
[…]
Source et suite : nextinpact.com
-
à une époque on calculait cette différence, cela avait même un nom, le slack
on voyait sur les forums une foules de gens demandant où était passé la différence de taille entre un dir /s et ce qu’il restait réellement sur le disque en dispo.