Fault-tolerant ETFS in a flash

QNX Software Systems has announced a fault-tolerant, embedded transactional file system (ETFS) for NAND flash memory devices.


Unlike conventional file systems, ETFS for the QNX Neutrino Real-Time Operating System (RTOS) uses a transactional update model that provides integrity across unexpected loss of power. As a result, the new file system eliminates the data corruptions that plague embedded systems when power failures and other catastrophic events occur.


The ETFS can be used in harsh environments such as in automobiles, where unexpected power fluctuations can easily corrupt a conventional file system.


“The need for reliable storage has become a critical issue for an array of embedded devices, from medical instruments to industrial control applications to in-car systems,” said Mark Roberts, director of product management at QNX.


If the QNX ETFS is in the midst of a file system operation when a power failure occurs, it will, upon restart, “roll back” the operation and complete it correctly, thereby healing itself of a condition that would leave conventional file systems in a corrupt state.


QNX Software Systems has also released a new, updated flash file system for NOR flash devices. Like ETFS, the NOR flash file system supports industry-standard (POSIX, ISO C) file semantics and tools, including dynamic manipulation of files and directories, symbolic names, permissions, and long file names. It also features wear-levelling, bad sector handling, automated fault recovery, and automated detection and correction of file system corruption.


Both file systems are available now as part of the QNX Flash and Embedding Technology Development Kit (TDK), a package of BSPs, drivers, source code, and other components for building flash devices into embedded systems.


The kit includes binary and source code for both the NOR flash file system and NAND flash file system (ETFS), compression tools, an on-the-fly decompression utility, source code for utilities that control flash devices (formatting, partitioning, etc.), embedding source code, documentation, and a royalty-free license to distribute QNX flash file system technology.