Overview


The FAT12/16/32, exFAT-compatible file system is a file system that supports FAT12/16/32, and exFAT for embedded systems. exFAT is optimized for large-capacity storage media exceeding 32 GB, such as flash memory cards, USB flash drives, and external hard drives, using the file system specifications developed by Microsoft.

Using the FAT12/16/32, exFAT-compatible file system enables the high-speed handling of large-sized files, such as video, audio and photos, that are stored on large-capacity media. This file system is optimal for systems that use large amounts of high-quality image or audio data, such as portable music or media players, digital cameras or video players, high definition digital TVs, photo printers, photo frames, or surveillance cameras.

The FAT12/16/32, exFAT-compatible file system was developed based on the FAT12/16/32, VFAT-compatible file system. All the features of the FAT12/16/32, VFAT-compatible file system are inherited.



Optimized for large-capacity media and large files

This file system is optimized for large-capacity storage media exceeding 32 GB, such as flash memory cards, USB flash drives, and external hard drives. Files exceeding 4 GB can be used, which was not possible in the conventional FAT32 file system. 



Optimized free cluster search and file deletion

A free cluster bitmap image stored within the system is used to search at high speed for free clusters in the media. In addition, files are deleted when the free cluster bitmap image is updated, which enables the high-speed deletion even of large files. 



Unicode used as the character code for file name specification

Unicode is used as the universal character code for file names in the exFAT file system, eliminating the need to support different character codes according to the language of the country or region.



High-speed operation with a small memory footprint

The FAT12/16/32, exFAT-compatible file system was developed based on the FAT12/16/32, VFAT-compatible file system not as an add-on to the FAT12/16/32, VFAT-compatible file system, but by optimizing the functions and performance as an exFAT file system. This results in a small memory footprint. Large files can also be operated at high speed. 



Inherited functions and features of FAT12/16/32, VFAT-compatible file system

The FAT12/16/32, exFAT compatible file system has inherited all the features of the FAT12/16/32, VFAT-compatible file system. These include functions and features useful for digital media devices, such as a high-speed seek back function for the file pointer, and a function for minimizing file system damage in the event of power shutoff or media removal.



Also functions as a FAT12/16/32 file system

The FAT12/16/32, exFAT-compatible file system functions not only as an exFAT file system, but also as a FAT12/16/32 file system according to the format of the target media. For example, if the media format is FAT32, then the system operates as a FAT32 file system. The file name can be specified from the application in Unicode even when the FAT12/16/32, exFAT-compatible file system operates as a FAT12/16/32 file system.



Supports large-capacity devices (exceeding 2 TB)

Supports GUID Partition Table (GPT) (currently under development).



Optional drivers available

The following drivers are provided as options. A file system specific to Memory Stick is also available.

•SD Memory Card
 *This device driver is for SD memory cards (SD/SDHC/SDXC) and MultiMediaCards (MMC).

•Memory Stick
 *This driver is for "Memory Stick" made by Sony Corporation. Memory Stick PRO is supported.

•CompactFlash
 *This device driver is for CompactFlash (CF).



Supports T-Kernel

The FAT12/16/32, exFAT-compatible file system supports T-Kernel.



High portability

The FAT12/16/32, exFAT-compatible file system itself is written in the C language and is not dependent on any CPU. Device drivers and code dependent on the operating system are separated to ensure easy porting to a different environment. The file system can even operate in an environment without an operating system.



Source code provided

The FAT12/16/32, exFAT-compatible file system is provided as source code.



Maintenance service and customization service

The following maintenance service is provided. The maintenance service enables developers to use the FAT12/16/32, exFAT-compatible file system with peace of mind.

 • Response to email inquiries regarding the product

 • Minor version upgrades

In addition, a customization service is available for supporting the FAT12/16/32, exFAT-compatible file system in different environments, such as a custom real-time operating system or hardware.


Operating environment


The FAT12/16/32, exFAT-compatible file system is not dependent on any particular hardware or operating system. Successful operation has been demonstrated on the following operating systems.

• eSOL's eMCOS POSIX 

• eSOL's eT-Kernel (extended T-Kernel) 


 Optional products



This device driver is for SD memory cards (SD/SDHC/SDXC) and MultiMediaCards (MMC).




This driver is for "Memory Stick" made by Sony Corporation. Memory Stick PRO is supported.




This device driver is for CompactFlash (CF).



FAT Safe FAT12/16/32, and exFAT-Compatible File System FAT Safe

This optional product for the FAT12/16/32, VFAT-compatible file system provides a recovery function in case an inconsistency occurs in the file system, such as after an unexpected power shutoff or media removal. 

Supported FAT file system: exFAT (currently under development)