VFAT【Virtual File Allocation Table】
概要

それまでのFAT(File Allocation Table)方式では、「REPORT1.TXT」のような短い名前しか付けられなかった。VFATではこの制約が取り除かれて255文字までの「ロングファイルネーム」に対応し、「営業報告書2025年版.docx」や「My Documents」のような直感的な名前が使えるようになった。
古い環境との互換性を保つため、長いファイル名を保存する際には、短縮した8.3形式の別名も自動的に生成して併記する。例えばWindowsの「Program Files」フォルダをMS-DOSから参照すると「PROGRA~1」と表示される。これにより、VFATに対応していない旧式のOSや機器からも同じストレージへのアクセスが可能である。
内部的には、長いファイル名を格納するために特殊なディレクトリエントリを複数連結して使用する。通常のFATが1ファイルにつき1エントリを使うのに対し、VFATでは長い名前を複数エントリに分割して記録するため、長いファイル名を多用するとディレクトリ領域の消費が増える場合がある。
なお、「VFAT」という名称は、厳密にはWindows上でMS-DOSを介さずFATを直接扱うための仮想デバイスドライバ(VxD)に由来する。Windows 3.1時点のVFATはまだ長いファイル名に対応しておらず、その機能はWindows 95で加えられた。その後、FAT32やexFAT、NTFSといった後継のファイルシステムが登場したが、これらにも長いファイル名を扱う仕組みとしてVFATの設計が受け継がれている。現在もUSBメモリやSDカードのファイルシステムとして使われる場合があり、LinuxなどWindows以外のOSでもVFATへの読み書きに対応しているものがある。