PX5 FILE
PX5 FILE Embedded FAT File System
The embedded FAT File System Used by Professional Developers
PX5 FILE embedded FAT file system is ultrasmall making it ideal for the most memory-constrained embedded devices.
Extensive caching mechanisms—caches for logical sectors, FAT entries, and directory search entries—enable ultrahigh performance. All caching is optional, and the developer controls the size of each cache.
PX5 FILE is rigorously tested for each release with 100% C statement and branch-decision coverage testing. In addition, it leverages pointer data verification (PDV) for integrity verification of stacks and internal system objects during runtime. Finally, optional run-time fault tolerance guarantees file system integrity after power loss.
PX5 FILE is simple to use. It implements the industry-standard FAT file system format:
- FAT 12/16/32 bit support
- exFAT support
- 8.3 and Long File Name (LFN) support
- A simple read/write sector direct call driver interface
- Linux file system API (open, close, read, write) is implemented natively


- Small, fast and easy to use
- Linux File API support
- Fault-tolerant support
- Pointer data verification (PDV)
- FAT 12/16/32 support
- exFAT support
- 8.3 and long file name (LFN)
- Simple r/w sector driver
- FLASH wear-leveling
- Arm Cortex-M/R/A & RISC-V
- IAR, GCC, Arm tools & Renesas RX
- Full source and no royalties
- Professional support
Components of PX5 FILE
Fast And Efficient
PX5 FILE has extensive caching for optimal run-time performance. The logical sector cache stores the most often used logical sectors, eliminating costly reads from the physical device. The FAT entry cache consists of the most often used FAT entries, which reduces the number of FAT sectors read. The directory entry cache improves searching for files and sub-directories by caching sub-directory entries. All caches (and memory required) are under the complete control of the developer.
Small
PX5 FILE is one of the smallest embedded file systems on the market, requiring less than 6KB of FLASH and 2KB of RAM for minimal use. Equally important, since PX5 FILE is implemented as loosely coupled C functions, the flash memory requirements scale automatically based on precisely what is being used. The linker automatically omits unused code if an API is not being used.
SIMPLE
The PX5 FILE embedded file system comprises one source file, px5_file.c, hich can be easily added to any project. The only additional requirement is to set up the project’s include path so that px5_file.h can be located during compilation. At this point, PX5 FILE is ready for operation—no complicated projects and linker control file changes are necessary.
Sample code:
#include <pthread.h>
#include <px5_file.h>
unsigned char memory[1024];
unsigned char buffer[512];
int file_handle;
int main()
{
ssize_t bytes_read;
unsigned char read_buffer[8];
/* Start PX5 RTOS. */
px5_pthread_start(1, memory, sizeof(memory));
/* Start PX5 FILE. */
px5_file_start();
/* Open a volume. */
px5_volume_open(‘0’, physical_driver, NULL, buffer,sizeof(buffer);
/* Open a file. */ file_handle = open(“TESTFILE.TXT”, O_RDWR);
/* Read 8 bytes from the file. */
bytes_read = read(file_handle, read_buffer, sizeof(read_buffer));
}
Advanced
PX5 FILE uses the global data encapsulation technique used by the RTOS. This technique enables register- relative code generation and makes detecting memory corruption of the PX5 FILE global data easier.
Tool Support
PX5 FILE also supports the most popular embedded development tools, including those from IAR, ARM, and GCC.
Processor Support
PX5 FILE is written in ANSI C, making it highly portable to any embedded MCU or MPU processor supported by the PX5 RTOS, including Arm Cortex-M, Cortex-R, Cortex-A, MicroBlaze, Renesas RX, RISC-V, and TriCore architecture families.
Full Source Code
PX5 FILE is delivered with complete source code designed to be easy to understand. It is also rigorously tested - 100% C statement and branch decision coverage testing for every release. The PX5 FILE source code is genuinely high quality.
Royalty Free
PX5 FILE is offered royalty-free, with simple and easy-to-understand licensing terms.
Professional Support
The embedded software experts on the PX5 support team are always ready to help and promise quick action on every support request.