Virtual File Allocation Table definition
Virtual File Allocation Table (VFAT) is a Windows file system format used in storage devices, such as hard drives, flash drives, and memory cards. It builds upon the older File Allocation Table (FAT) file system by allowing long file names for files and directories.
How VFAT works
The original FAT file system only allowed eight characters for the file name and three for the extension (known as the “8.3” format). VFAT supports file names up to 255 characters while still preserving backward compatibility with existing FAT systems.
The structure of a directory in VFAT is similar to that of FAT. Each directory is a table of entries representing specific files or subdirectories. These entries include information like file names, attributes, starting clusters, sizes, and timestamps.
The long file names in VFAT are actually stored as separate entries in the directory entry table. These entries are marked with the “Volume Label” attribute and are stored before the standard 8.3 format entry. A checksum is used to ensure consistency of long file names.
As a result, VFAT is backwards compatible with older FAT file systems — devices formatted with VFAT can be read by systems using the older FAT system, but long file names may be truncated to their 8.3 format.