File Systems Big and Small

Posted by: Kerri McConnell

The embedded systems market is extraordinarily diverse. Virtually any electronic device that is not a desktop computer or an enterprise data center behemoth is under the “embedded system” umbrella. With such variation in form factor, use case, price point and processing need it should come as no surprise that data storage needs differ as well. For years, Datalight has served the “big” end of this market with our Reliance and Reliance Nitro power failsafe file systems. Our customers who had data reliability requirements typically build systems using high-capability processors like Freescale i.MX family, TI OMAP family and other ARM 7 or higher designs. Operating systems choice centered on Linux, Wind River VxWorks and Microsoft Windows Embedded variants. Big systems, big storage requirements, a feature-rich file system.

That was then, this is now. With the Internet of Things gaining momentum, more “small” end devices are taking on tasks that rely on data – capturing it, processing it, recalling it to make decisions—data reliability has become a requirement. Even in designs that don’t use a traditional operating system, data storage is increasing. This has driven Datalight to develop Reliance Edge, a tiny file system that meets the same power failsafe requirements as our flagship Reliance Nitro.

All Datalight file system can be easily ported to a variety of operating systems and use a proven transactional method to ensure data integrity. Reliance and Reliance Nitro support higher end, more sophisticated environments that need features like true multithreading and use complex operating systems like Linux, VxWorks, Android, and Windows Embedded Compact. Reliance Edge differs in a couple of significant ways. Building on file system reliability techniques perfected through years of experience, our development team took on the challenge of crafting a file system with the smallest possible footprint to fit into resource constrained environments. The Reliance Edge code base is very compact—designed for a microcontroller-based system with limited RAM and code space. Reliance Edge is offered under both an open source GPLv2 and a proprietary commercial license model.

To ensure the highest product quality and establish a platform that could migrate to safety-critical compliance environments, the Reliance Edge team followed strict design, coding and verification standards dictated by the MISRA C: 2012 specification (full documentation of the design and proof of compliance is available).

Like all Datalight products, Reliance Edge is built to be portable for different RTOSes or used in environments with only a scheduler and is largely processor independent. Datalight prepackages a port on the popular FreeRTOS with the initial release. Ports are underway for additional RTOSes, among them Freescale MQX and Micrium µCOS, which will be tested and validated on the ST Microelectronics STM32 and the Freescale Kinetis K65 processors.

The table below highlights some key feature differences between file systems from Datalight:

  Reliance Edge Reliance Nitro Reliance
Reliability      
Technique used Transactional Transactional Transactional
Overall (power safe) Yes Yes Yes
Media failure detection Yes Yes No
Runtime control of transactions Yes Yes Yes
Time-based transactions No Yes Yes
Performance      
Mount after power interruption Fast, consistent Fast, consistent* Fast, consistent
Sequential large read Fast Fast Fast
Read small files Moderate Fast Moderate
Large sequential writes Fast Fast Fast
Small random writes Moderate Slow Moderate
File system operations Moderate Fast Moderate
Deterministic latency Yes No No
System requirements      
Small Code Footprint Yes No No
Low RAM requirement Yes No No
Exchangeable Via Datalight
custom application
w/driver w/ driver
Development standard MISRA C: 2012 Datalight Internal Datalight Internal
Test suite provided Yes Yes Yes
Format and checker tools Yes Yes Yes
Internals      
Directory structure Linear Tree-based Linear
Maximum file size 256 TB 2 TB 4 GB
Maximum volume size 256 TB 256 TB 2 TB
Metadata CRC Yes Yes No
POSIX file permissions No Yes No
Case sensitive No Configurable Configurable
OEM attributes No Yes No

 

To download the open source version of Reliance Edge, visit github https://github.com/datalightinc/reliance-edge#reliance-edge . For a no charge evaluation of Reliance Nitro or Reliance, contact Datalight. [form] http://www.datalight.com/evaluations


Comments (0)


Add a Comment





Allowed tags: <b><i><br>Add a new comment: