The FAT12/16/32, VFAT file system is a FAT file system for embedded systems, designed to enable flexible and fast support for application-specific customization requests. Included are many functions required for today's digital home appliances.
The FAT12/16/32, VFAT file system inherits all the features of File System . It is compatible with File System on the API level, and File System drivers are also very easy to port.
The FAT12/16/32, VFAT file system is a FAT file system used in MS-DOS/Windows PCs. This system supports FAT12, FAT16, FAT32, and VFAT (long file names). Building a system by embedding the FAT12/16/32, VFAT file system makes it easy to exchange data between devices and PCs.
Multilingual support with dynamic character code changing function
ASCII, SJIS (Japanese), Big5 (Traditional Chinese), GB (Simplified Chinese), Latin-1 (Western European languages), Latin-2 (Central/Eastern European languages), Thai, Korean, Cyrillic, and Arabic character codes are supported.
The local character code to be used can be changed dynamically in the FAT12/16/32, VFAT file system. This function provides support via a single object code when shipping and selling the final product to different countries and regions, without needing to change or recompile the source code.
Optional product for specifying file names with Unicode
An optional product is available with APIs that can use Unicode when specifying the file name in an open or search API, instead of the local character code such as SJIS.
Flexible support for application-specific customization requests
Today's embedded systems, including digital cameras, portable music players, and digital home appliances such as flat-screen TVs, are highly diverse in terms of the media used, the types and size of the handled data, and the application characteristics. Therefore, the file system needs to support a wide range of functions and performance. The FAT12/16/32, VFAT file system is designed to enable flexible and fast support for application-specific functions for the development of products with high added value.
File high-speed seek function
The FAT12/16/32, VFAT file system can store the cluster link information of each file in a buffer specified by the application. When seeking through the file, this information in the buffer is referenced to enable high-speed file pointer movement by minimizing the number of references to the FAT. Especially when seeking forward from the current file pointer location, performance is dramatically improved because unlike seeking by referencing the FAT, there is no need to follow the link from the first cluster of the file. This function is particularly effective for systems that handle data such as video and audio.
File splitting and merging APIs for video and audio data
Especially when handing video or audio data, sometimes a single file needs to be split or multiple files need to be merged. For example, when an edit function is used to cut unwanted parts of a video, or combine two audio files into one. When splitting a file into two in a conventional file system, the application must copy the data of each split part to an unused data area, create two new files, and then delete the original file. In the FAT12/16/32, VFAT file system, APIs are provided that split and merge files using FAT and directory entries only, which eliminates multiple steps in the procedure and results in higher performance.
File data fragmentation reduction function
In a FAT file system, file data becomes fragmented over time as data write and delete operations are performed repeatedly. As a result, the number of media accesses required to read or write a file increases, and performance deteriorates. The FAT12/16/32, VFAT file system provides a function for minimizing fragmentation of file data.
Measures for preventing data corruption at power shutoff or when removing media
The FAT12/16/32, VFAT file system provides a function for minimizing corruption of data in media when the power is shut off or the media is inadvertently removed while accessing files.
FAT Safe is also available as an optional product. This has a recovery function in case the file system is corrupted at power shutoff or when removing the media for ensuring file system reliability.
Multiple drives are supported. Multiple drives of the same type or different types can be handled as a:, b:, and so on. Multiple drives can be accessed simultaneously.
The FAT12/16/32, VFAT file system provides a function for caching FAT, directory entries, and data. By using this function, the access count to media is minimized for higher performance.
Settings such as the cache buffer size to be used can be tuned as appropriate for the system during configuration.
Code size is minimized by linking only the APIs actually used by the application.
Coexists with standard C library
The FAT12/16/32, VFAT file system provides a mechanism to prevent conflicts between function names and variable types, which enables File System and the standard C library to be used simultaneously.
The re-entrant structure of the FAT12/16/32, VFAT file system enables simultaneous access to multiple files in a multitasking environment.
Supports POSIX-like file APIs
Easy-to-use POSIX-like APIs are provided.
Sample drivers provided as standard
The FAT12/16/32, VFAT file system provides the following drivers as standard.
o RAM disk
o Pseudo disk
In addition, the following drivers are provided as options.
o SD Memory Card
o Memory Stick
Supports T-Engine and T-Kernel
The FAT12/16/32, VFAT file system supports T-Engine and T-Kernel.
The FAT12/16/32, VFAT 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.
The FAT12/16/32, VFAT 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 File System with peace of mind.
o Response to email inquiries regarding the product
o Minor version upgrades
In addition, a customization service is available for supporting the FAT12/16/32, VFAT file system in different environments, such as a custom real-time operating system or hardware.
File System is not dependent on any particular hardware or operating system.
Successful operation has been demonstrated on the following operating systems.
This optional product for the FAT12/16/32, VFAT 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.
This optional product for the FAT12/16/32, VFAT file system provides a multilingual support function that enables use of Unicode for specifying file names.
This optional product for the FAT12/16/32, VFAT file system provides partition editing programs that support MBR partitions and logical format programs that support FAT12/16/32 and VFAT.
This optional product for the FAT12/16/32, VFAT file system is a device driver for SD memory cards and MultiMediaCards (MMC).
Supported controller: TMS320DM320 built-in controller, etc.
This driver is for "Memory Stick" made by Sony Corporation. Memory Stick PRO is supported.