FAT16

Un article de Wikipédia, l'encyclopédie libre.

FAT16
Diffuseur de logiciel Microsoft
Nom anglais File Allocation Table
(16 bits)
Introduction novembre 1987
(Compaq DOS 3.31)
Identificateur de partition 4 (<32 Mio en CHS)
6 (>32 Mio en CHS)
14 = 0xe (en LBA)
Structures
Contenu des répertoires tableaux hiérarchiques
Allocation de fichiers liste chaînée dans la FAT
Mauvais blocs marqués 0xfff7 dans la FAT
Limitations
Taille max. de fichier 4 Gio (mais limité par la taille du disque)
Nombre max. de fichiers 65518
Taille max. de nom de fichier 8.3 (comme FAT12)
(étendu à 255 en VFAT)
Taille max. de volume 2 Gio (voire 4 Gio)
Caractères autorisés dans les noms de fichiers tous les caractères sur 8 bits (étendu à tout Unicode en VFAT) sauf
/ \ : * ? " < > |
Fonctionnalités
Dates enregistrées modification (+ création et accès en VFAT)
Plage de dates 1er janvier 1980 à
31 Décembre 2107
Forks non supporté
Attributs verrouillé, archivé, caché, système
Droits du système de fichier non supporté
Compression intégrée non supporté
Chiffrement intégré non supporté


FAT16 (FAT pour file allocation table, table d'allocation de fichiers) est un système de fichiers.

Ce système de fichiers succéda à FAT12 et précéda FAT32 ; il fut utilisé pour le MS-DOS et la première version de Windows 95. À partir de Windows 95 OSR2, l'utilisateur a le choix entre FAT16 et FAT32.

À l'apparition de Windows 95, on a greffé un système VFAT permettant de gérer les noms longs (Long File Names ou LFN).

[modifier] Caractéristiques techniques

Comme son nom l'indique, il utilise des adresses d'unités d'allocation sur le disque codées sur 16 bits, ce qui fait 216 possibilités, cependant la limite avec FAT16 se situe à 65524[1] unités d'allocation voire encore moins car selon un ouvrage Microsoft assez ancien[2] les numéros d'unité d'allocation 0xfff0 à 0xfff6 (soit 65520 à 65526) ne doivent pas être utilisés, menant le nombre maximal à 65518 (certains encore citent 65517 mais il pourrait s'agir d'une confusion entre numéro de cluster et nombre de clusters). En tout état de cause, un programme qui formate un disque a tout intérêt à rester loin de cette limite car beaucoup de code erroné a été écrit[1].

Contrairement à FAT12 qui ne permettait pas d'avoir des partitions d'une taille supérieure à 16 mégaoctets, FAT16 permet d'avoir des partitions, selon la taille des clusters, occupant jusqu'à 2 Gio, et exceptionnellement 4 Gio :

  • clusters de 2 Kio : partitions de 128 Mio ;
  • clusters de 4 Kio : partitions de 256 Mio ;
  • clusters de 8 Kio : partitions de 512 Mio ;
  • clusters de 16 Kio : partitions de 1024 Mio, c'est-à-dire 1 Gio ;
  • clusters de 32 Kio : partitions de 2048 Mio, c'est-à-dire 2 Gio ;
  • clusters de 64 Kio : partitions de 4096 Mio, c'est-à-dire 4 Gio : ces partitions sont créées et gérées uniquement par Windows NT 4.0 ou postérieur.

Il existe deux versions de FAT16 en adresses CHS (dont les identifiants de partition sont 4 et 6) car à l'époque où FAT16 a été introduit, le système d'exploitation DOS des ordinateurs personnels n'utilisait jamais les instructions 32 bits des processeurs x86 (gardant ainsi le système d'exploitation compatible avec les processeurs les plus anciens comme le 8086), cependant un disque FAT16 de plus de 32 Mio contient un nombre de secteurs qui dépasse 65535 (216-1 le plus grand nombre représentable avec 16 bits) secteurs ce qui exige donc de faire les calculs en 32 bits (tout en n'utilisant que des instructions 16 bits), le premier DOS à supporter cela fut le Compaq DOS 3.31.

Les autres limitations de FAT16 sont les suivantes :

  • Taille maximale d'un fichier : 4 Gio - 1 octet (soit exactement 4 294 967 295 octets) ;
  • Nombre maximal de fichiers par partition : 65524 ;
  • La racine du disque est de plus limitée à 512 fichiers et/ou dossiers.

Ces limitations sont aussi revues à la baisse lors de l'utilisation de nom de fichier long. Le nom est morcelé sur plusieurs entrées de la racine (disque logique ou afférente au répertoire), faisant gonfler d'autant l'espace disque alloué aux entrées des fichiers, et réduisant ainsi le nombre de clusters utiles aux données.

Il est à noter que la seule différence entre un entête FAT12 et FAT16 est le nombre de cluster. Il est donc impossible de formater un média de petite taille en FAT16[3].

[modifier] Notes et références

  1. ab (en) FAT: General Overview of On-Disk Format
  2. (en) Microsoft MS-DOS Programmer's Reference : version 5.0, 1991 (ISBN 1-55615-329-5)
  3. voir l'article FAT12 pour plus de détails.

[modifier] Voir aussi

[modifier] Articles connexes

Autres langues