VFAT is the name of file system intruduced by Microsoft in Windows 95. It's compatible with FAT file system in that it preserves old 8+3 character names (using a rather silly but straightforward conversion), but it also supports long filenames. (This is more or less of a kluge and, of course, VFAT doesn't support essential things like symlinks, owners and permissions...)
It has since been superseded by FAT32, another kluge that gets more or less rid of the annoying cluster size growth of FAT, while not bringing more interesting things...
vfat is also the name of Linux kernel module that supports VFAT/FAT32 reading and writing.
Some random things about VFAT file name translation:
- Microsoft patents everything they can - and, sometimes, I think this is just because they can. The file name mapping between 8+3 names and long file names is covered by US patent 5,745,902. (Yes, I know, software patents are evil. Some are just silly. =)
- The default name conversion can be changed so that it first uses corresponding XXXXXXXX.XXX name and only then XXXXXX~1.XXX, XXXXXX~2.XXX and so on. The change can be done by changing the registry. In Windows 95, this was done by going to HKEY_LOCAL_MACHINE\System\CurrentControlSet\control\FileSystem, adding a new binary value key NameNumericTail with value 0.
See also: MICROS~1