ファイル割り当てテーブル(FAT)とは何ですか?

FAT32、exFAT、FAT16、FAT12について知りたいことすべて

ファイルアロケーションテーブル(FAT)は、1977年にMicrosoftによって作成されたファイルシステムです。

フロッピードライブメディアやSDカードのような他のソリッドステートメモリデバイスのような可搬型大容量ストレージデバイスのファイルシステムとして、FATは現在でも使用されています。

FATは、MS-DOSからWindows MEまでのMicrosoftのすべてのコンシューマオペレーティングシステムで使用される主要なファイルシステムでした。 Microsoftの新しいオペレーティングシステムではFATは引き続きサポートされていますが、最近ではNTFSが主なファイルシステムです。

ファイルアロケーションテーブルファイルシステムは、主に大容量のハードディスクドライブおよびより大きなファイルサイズをサポートする必要があることから、時間の経過とともに進歩を見せています。

FATファイルシステムのさまざまなバージョンの詳細は次のとおりです。

FAT12(12ビットファイルアロケーションテーブル)

最初に広く使われているFATファイルシステムのFAT12は1980年に最初のバージョンのDOSとともに導入されました。

FAT12は、MS-DOS 3.30以降のMicrosoftオペレーティングシステムの主要なファイルシステムでしたが、MS-DOS 4.0以降のほとんどのシステムでも使用されていました。 FAT12は、今でも見つかるフロッピーディスクで使用されるファイルシステムです。

FAT12は、4 KBのクラスタを使用する場合は最大16 MB、8 KBを使用する場合は32 MBのドライブサイズとファイルサイズをサポートします(8 KBクラスタを使用する場合は最大4,084ファイル)。

FAT12のファイル名は、最大文字数制限8文字を超えることはできません。

FAT12には、 非表示読み取り専用システムボリュームラベルなど、さまざまなファイル属性が導入されました

注: 1977年に導入されたFAT8は、FATファイルシステムの最初の真のバージョンでしたが、時間のある端末スタイルのコンピュータシステムでのみ使用が制限されていました。

FAT16(16ビットファイルアロケーションテーブル)

FATの2番目の実装は、PC DOS 3.0とMS-DOS 3.0で1984年に初めて導入されたFAT16でした。

FAT16Bと呼ばれるFAT16の少し改良されたバージョンは、MS-DOS 6.22を介してMS-DOS 4.0のプライマリファイルシステムでした。 MS-DOS 7.0およびWindows 95以降、代わりにFAT16Xと呼ばれるさらに改良されたバージョンが使用されました。

使用されるオペレーティングシステムとクラスタサイズによって、FAT16フォーマットのドライブの最大ドライブサイズは2 GB〜16 GBの範囲で、後者は256 KBクラスタのWindows NT 4のみです。

FAT16ドライブのファイルサイズは、 容量ファイルサポートを有効にして最大4GB、またはそれを使用しない場合は2GBです。

FAT16ボリュームに保持できるファイルの最大数は65,536です。 FAT12と同様に、ファイル名は8 + 3文字に制限されていましたが、Windows 95から255文字に拡張されました。

アーカイブファイル属性はFAT16で導入されました。

FAT32(32ビットファイルアロケーションテーブル)

FAT32は、FATファイルシステムの最新バージョンです。 Windows 95 OSR2 / MS-DOS 7.1ユーザーのために1996年に導入され、Windows MEを使用してコンシューマWindowsバージョンの主要なファイルシステムでした。

FAT32は、64 KBクラスタで最大2TB、または最大16TBの基本ドライブサイズをサポートします。

FAT16の場合と同様、FAT32ドライブのファイルサイズは最大で4GB、 ラージファイルサポートはオン、2GBではそれなしで駆動されます。 FAT32 +と呼ばれる修正版のFAT32は、256 GBに近いファイルをサポートしています。

32 KBのクラスタを使用している限り、最大268,173,300個のファイルをFAT32ボリュームに含めることができます。

exFAT(拡張ファイル割り当てテーブル)

2006年に最初に導入されたexFATは、FAT32の後の「次の」FATバージョンではありませんが、Microsoftによって作成されたさらに別のファイルシステムです。

exFATは主に、フラッシュドライブ、SDHC、SDXCカードなどのポータブルメディアデバイスで使用することを意図しています。

exFATは最大512 TiBのポータブルメディアストレージデバイスを正式にサポートしていますが、理論的には64 ZiBほどの大きさのドライブをサポートすることができます。

255文字のファイル名のネイティブサポートとディレクトリあたりの最大2,796,202ファイルのサポートは、exFATシステムの2つの特筆すべき機能です。

exFATファイルシステムは、ほとんどすべてのバージョンのWindows(オプションのアップデートを備えた旧バージョン)、Mac OS X(10.6.5+)、多くのテレビ、メディア、その他のデバイスでサポートされています。

ファイルをNTFSからFATシステムに移動する

ファイルの暗号化、 ファイル圧縮 、オブジェクトのアクセス許可、ディスククォータ、およびインデックス付きファイルの属性は、 FATではなく NTFSファイルシステムでのみ使用できます。 上記の議論で言及したような他の属性もNTFSで利用できます。

NTFSボリュームからFAT形式のスペースに暗号化されたファイルを置くと、そのファイルの暗号化状態が失われます。つまり、暗号化されていない通常のファイルと同じようにファイルを使用できます。 この方法でファイルの復号化を行うのは、ファイルを暗号化した元のユーザー、または元の所有者の許可を得た他のユーザーのみが可能です。

暗号化されたファイルと同様、FATは圧縮をサポートしていないため、圧縮ファイルはNTFSボリュームからFATボリュームにコピーされると自動的に解凍されます。 たとえば、NTFSハードドライブからFATフロッピーディスクに圧縮ファイルをコピーすると、そのファイルはフロッピーに保存される前に自動的に解凍されます。これは、移行先メディアのFATファイルシステムに圧縮ファイルを保存する機能がないためです。

FATの上級読書

FAT12、FAT16、およびFAT32でフォーマットされたドライブがどのように構成されているかについては、Andries E. BrouwerのThe FAT Filesystemsを参照してください。