File systems and flash storage are integral to the function of many embedded applications yet some developers take the view that ‘a file system is just a file system'. The special nature of embedded systems means that although corrupt or missing data can be problematic, a corrupt file system can prevent an application from running altogether. We understand embedded storage at a fundamental level and supplies the industry’s broadest range of file systems. Serious engineers should not leave things to chance: use a file system developed for an embedded system, guaranteed to be reliable by design, and proven in applications for more than a decade.
We are not just experts in file systems but in flash storage at a deep level. We provide storage solutions for any storage media including SD/ MMC/ SDHC/ SDXC Cards, eMMC, NAND, NOR, disk drives, Compact Flash, RAM, pen drives and most common types of external storage. We not only provide drivers, we provide specifications to make whole systems fail-safe by design.
Off-the-shelf drivers are available for flash from manufacturers including Adesto, Atmel, Greenliant, Intel, Micron, Toshiba, Hynix, Samsung, Spansion, Numonyx, Macronix, Winbond and many others. We support hundreds of flash parts as well as numerous specialty devices including Solid State Drives (SSD), MLC flash and ClearNAND. All of our file systems conform to a standard API and are fully interchangeable.
Metering applications typically work with well-defined records that are more suited to a database approach. General purpose file systems do not have any cyclic buffer logic for storing records and this adds complexity to applications. SMFS uses a structured database to reduce complexity of the application complexity and improve the performance of the system in almost every way: speed, power consumption, and flash life.
Many software vendors make claims about reliability and fail-safety that do not stand the test of close inspection. In order for a file system to be truly fail-safe in the event of power loss or unexpected reset, the required behavior of each layer in the system must be defined. We define all required behaviors and can guarantee fail-safe operation by design.
The NicheFile system component support a RAM/ROM simulated file capability for those systems with no filing subsystem, or can map between a virtual RAM based capability and a true Flash or disk based file system. Using the VFS supports the integration of other components such as the HTTP Server, FTP, TFTP, etc., which expect some capability to use read/write abstractions even on systems that lack any true file capability. Using VFS such logical file devices (such as UNIX-like /dev/mem or /dev/null) can easily be supported and all RAM-based files can be straightforwardly backed up to FLASH memory using a single command or API call. Drivers for popular flash chips are provided.
The InterNiche File System is a complete drop-in module that enables embedded systems developers to add read/write capability to RAM, flash, or disk. The file system will map to a preexisting file system so that the developer can add RAM-based file capability without changing the existing file system.