Home » Products » Embedded File Systems » Reliance Nitro

Reliance Nitro - Embedded File System

High Performance File System for Embedded devices

Datalight Reliance NitroTM is a transactional file system created specifically for embedded devices where power loss may occur, protecting critical system and user data from corruption. It ensures rock-solid data reliability while providing the performance needed to create an optimal user experience. Reliance Nitro works with a broad array of storage media – including flash memory, RAM, hard disk, USB mass storage, SD/MMC, and e•MMC – and virtually any 32-bit operating system. The speed of file and directory access is improved by several orders of magnitude while maintaining complete metadata and file data integrity. The unique combination of tree-based directory architecture, extent based design, and faster atomic transactions, gives a performance benefit for I/O throughput and metadata operations. Dynamic Transaction PointTM technology gives developers unprecedented control over the file system. Reliance Nitro is optimized for use on consumer electronics and industrial devices like smart phones, navigation devices, and ruggedized handheld computers that cannot compromise reliability or performance to deliver a compelling user experience. Reliance Nitro file system is an ideal upgrade from Linux file systems, VxWorks file systems, and Windows Embedded CE file systems

Introducing Reliance Nitro 3.0

Reliance Nitro 3.0

How Reliance Nitro Works

Datalight Reliance™ Nitro is a two state file system, comprised of the working state and the committed state. Original data (the committed state) is preserved until the new data (the working state) is written and a transaction point is performed. During operation on the working state, all file system modifications - including changes to directories, files and metadata - are stored on an area of the media that is currently unused and does not contain committed state data. The possibility of corruption is eliminated because the data of the new transaction is written to an unused portion of the media. Writing to an unused portion of the media allows the previous state of the file system to be untouched. Valid data from the previous transaction is always available.

 

 

 

Performance

When testing a file system for performance, it is important to consider data beyond just reads and writes.

Because Reliance Nitro always maintains a “known good state,” it has a mount time advantage particularly after power loss. In situations where there is random I/O penalty such as in Hard Disk Drives and e•MMC this advantage is magnified. Journaling file systems such as ext3 and ext4 will need to perform random reads to build the journal. Since Reliance Nitro always keeps the disk in a known good state there is no need to run integrity checks during the file system boot, even after a disorderly shutdown.

 

Nitro Mount Chart

 

Reliance Nitro demonstrates superior file system metadata handling. When reading and writing smaller files, this file system overhead is far more important than the raw throughput available. In the test below, run on a TI OMAP 3530 Reliance Nitro created 1000 files in 22 seconds, compared to almost five minutes for the native file system solution.

 

 

Disk Mount Time Comparison

Tree-Based Metadata Management

How Tree-based Metadata Management Works

Trees are used for varying purposes in Reliance Nitro:

 

  1. Directory Tree: The purpose of the directory tree is to associate a name with a unique file number within a parent directory. This association is implemented via a tree structure.
  2. Allocation Tree: The purpose of the allocation tree is to associate allocated blocks with a file as well as to store information about the file itself.

 

Tree RootNode

Initially, each tree begins with a leaf node known as the RootNode. Once each leaf node becomes full, an intermediate node is added. Intermediate nodes can point to multiple leaf or intermediate

Disk Mount Time

tree-based architecture diagram

Leaf Node
Leaf nodes are where the data associated with a key is actually stored.

 

Intermediate Node
Intermediate nodes provide a method for the tree to grow dynamically. The data associated with intermediate node keys contain a logical block number for a leaf node or intermediate node:

 

Block Size in Bytes 

512

1024

2048

Keys per Intermediate node

41

81

169

Keys per leaf node

17

35

72

Tree Depth Number of Keys

Level 1

17

35

72

Level 2

697

2,940

12,168

Level 3

28,577

249,960

2,056,392

Level 4

1,171,657

20,744,640

347,530,248

 

Advantages of a tree-based design

Features and Benefits

Feature

Benefit

Dynamic Transaction Point technology - Customize the balance between performance and data at risk. All writes are atomic.

Take Control of Device Reliability
Eliminate data corruption without sacrificing performance

No CHKDISK utility necessary, even after unexpected power loss.

Fast Boot Time
Reliance boots in under one second

eMMC Support for advanced features like secure delete 

Securely Delete a File
Utilize features in eMMC to gain competitive advantage

Multi-threaded architecture reduces latency between multiple file access requests.  

Uninterrupted Media Playback
High-quality multi-media experience

performance-enhancing discard interface is provided for NAND and NOR; other block device drivers are supported (incl. RAM, DOC, SD/MMC, USB).
Full ANSI C source code is available  

Design Flexibility
Freedom of hardware choice

Best in class, highly responsive technical support
SDKs available for Linux,  VxWorks, Windows CE and Windows Mobile
RTOS Porting (with POSIX-like functions) for any 32-bit RTOS, including proprietary operating systems. 

 

Faster Time to Market
Save development costs

 

Reliance-formatted media can be accessed from a Windows desktop system when the Reliance Nitro Windows Driver is installed

Data Exchangeability
Allows for seamless data exchange between the device and the host PC

CRC32 for file data and metadata Continuous monitoring of data integrity for ultimate reliability

 

Product Specifications

Datalight Reliance Nitro™ with Dynamic Transaction PointTM technology is a multi-threaded, fault-tolerant embedded file system, offering control of the performance and data at risk balance. Reliance Nitro embedded file system integrates easily into your system without application modifications. Its unique application-controlled transaction points lets Reliance Nitro users achieve ultimate reliability and performance, responsive to every nuance of your unique use cases. Unlike default solutions, such as FAT-based file systems which are built on the faulty foundation of 1980’s desktop file systems, Datalight Reliance Nitro has been specifically designed for flawless operation on the full range of modern storage technologies, including flash memory.

 

Pre-ported SDKs
Drop in file system replacement for Linux, VxWorks, WindowsCE, Windows Mobile

 

Target Configuration
32-bit OS, any CPU, virtually any storage media, 70 KB RAM (typical)

 

Development System
Windows 32 host; 4 MB of disk space for Reliance; sufficient RAM for development tools

 

Supported Media
Flash memory, RAM, HDD, Disk-On-Chip, USB Mass Storage, SD/MMC, and eMMC RAM Memory Required 100 KB to 150 KB (nominal)

 

Media Volume Size
Each partition (or disk) can be scaled from 100 KB to 32 TB (terabytes)

 

Max File Size/Name Length
Available free space/1,024 UTF-8 bytes (or OS imposed limits)

 

Get the Reliance Nitro Datasheet

 

Getting Started

Evaluate
Contact Sales
NEWS