FATとは
FAT(File Allocation Table)はデジタルデータを記録媒体上で管理するためのファイルシステムの1つです。1977年にMicrosoft社によって開発され、MS-DOSやWindows、USBメモリーやSDカードなど幅広いデバイスで利用されています。FAT領域にはファイルがディスク上のどこに、どのような順序で保存されているかの情報が連鎖的に記録されています。ファイルの実データはクラスターと呼ばれる単位で書き込まれ、FATはそのクラスター間の繋がりを示す役割を担います。シンプルな構造であるため、さまざまなシステムでの実装が容易であり、互換性が高いという利点があります。
FATの種類
FATの種類と制限について以下の表にまとめています。
項目 | FAT12 | FAT16 | FAT32 |
---|---|---|---|
最大ファイルサイズ | 32MB | 2GB | 4GB−1バイト |
クラスターサイズ | 512バイト~32KB | ||
ルートディレクトリーに保存できる最大ファイル数 | 512 (※1) | 512 (※1) | 65,517 (※1) |
最大ファイル数 | 4,077 (※1) | 65,517 (※1) | 268,435,437 (※1) |
最大クラスター数 | 4,084 | 65,524 | 268,435,444 |
最大ボリュームサイズ | 32MB | 2GB | 2TB |
最大ファイル名長 | 8.3形式または255文字 |
※1:ファイル名が8.3形式の場合です。
短いファイル名と長いファイル名
MS-DOSやWindows 3.xで採用されていたファイル名の形式として8.3形式があります。
ベース名に最大8バイト、ドット、拡張子に最大3バイト使えることから8.3形式と呼ばれています。Windows95以降では最大255文字まで使用できる「長いファイル名(LFN:long filename)」がサポートされています。この長いファイル名に対応して、8.3形式は「短いファイル名(SFN:short filename)」とも呼ばれます。
FATファイルシステムでは8.3形式のファイル名のために、11バイトの領域が1つのディレクトリーエントリーに確保されています。これに対して長いファイル名は、13バイト毎に1つのディレクトリーエントリーを浪費します。
ここで上記表に示すとおり、FAT16のルートディレクトリーに保存できる最大ファイル数は512です。これは言い換えると、ルートディレクトリーエントリー数が512となります。したがってすべてのファイル名が8.3形式の場合は512ファイル保存できますし、ファイル名が8.3形式に収まらない場合は長いファイル名となり、その分保存でるファイル数が減ります。
短いファイル名の制約
- 使用できるのは英字、数字と次の記号です。
$ % ' - _ @ ~ ` ! ( ) { } ^ # & - 小文字は大文字に変換されます。
- 合計パス長は80文字を超えることができません。これには3文字のドライブ名、64文字のパス、8.3形式の12文字、終端文字(NULL)を含みます。
コメント