Reliable RTOS Embedded File System - Reliance Edge

File System for Decision-Quality Data at the Edge of the IoT


Datalight Reliance Edgetm is the only embedded file system designed to capture and preserve decision-quality data with deterministic behavior required by today’s autonomous systems. Reliance Edge is a transactional file system that protects critical system and user data from corruption specifically for systems where power loss may occur. Datalight’s unique file system works with a broad array of storage media including: eMMC, SD/MMC, NVRAM, USB mass storage, and SATA (or PATA) disks. Reliance Edge is a complete flash file system when used with a flash translation layer flash driver like FlashFX Tera, or a flash software driver. Reliance Edge continues the legacy of file system products in the Reliance family that have shipped in hundreds of millions of devices and is supported by Datalight’s award-winning support organization.

Reliance Edge - Embedded File SystemReliance Edge can be configured to meet the specific needs of your application by reducing complexity, optimizing resource use, and maximizing performance. Whether your application requires a single log file, a pre-defined set of files with fixed names, or complete flexibility to modify file hierarchy during runtime, Reliance Edge has easy to understand options. Data storage experts at Datalight can help you make the most of them. Our POSIX-like API option makes integration straightforward and Reliance Edge has the configuration flexibility to fit into even the tiniest of systems.

At its heart, Reliance’s Edge’s reliability and fault-tolerant operation is a result of a transactional approach that is much the same as an embedded database: either all changes to the disk are completed or it rolls back to a state where no changes were made. This transactional model was chosen over the journaling file system model in order to keep file system metadata and user data in sync during file system changes

Key Features

  • Rock-solid meta and user data reliability
  • Reliable operation does not require media having atomic sector writes
  • Ideal for resource-constrained environments, Reliance Edge can be configured to use as little as 4 KB of RAM, 12 KB of code 
  • Simple, easy-to-understand architecture makes implementation quick and efficient
  • Atomic transaction model protects both user data and meta data from corruption
  • Boots quickly and consistently even after unexpected shutdown or power loss
  • Includes tools for disk image creation on a Microsoft Windows-based workstation
  • Quicker to implement and more cost-effective than file systems you build yourself
  • Replaces or coexists with other file systems
  • Works with virtually any block device driver supporting HDD, RAM, USB Mass Storage, SD/MMC, or eMMC
  • Data stored on removable media accessible on a PC using Image Copy tool
  • Pre-ported to FreeRTOS and easily ported to virtually any microcontroller RTOS
  • Ships as source code that is MISRA C:2012 compliant
  • MISRA C:2012 Design Assurance Package available to commercial licensees
  • Open-source version available for evaluation and personal use
  • Commercial-use license for those who cannot comply with GPL v2 restrictions or require warranty and support guarantees

Ultimate Control with Determinism

Reliance Edge configuration options allow developers complete control over which features are included, providing ultimate control to make the file system fit your specific use case. Regardless of how it’s configured, Reliance Edge’s key file system operations are deterministic, providing unprecedented predictability.

Full POSIX Configuration:

This configuration includes a full POSIX-like file system API, including path-based file access, file handles, directory operations (including atomic rename), transactions, and file system formatter. Configuration options with support for up to ten tasks, ten open file handles, 512-byte block size, and absolute minimum number of twelve buffers were used to determine code size and RAM requirement.

Small POSIX Configuration:

A reduced code size (ROM) option is illustrated by the Small POSIX configuration, which excludes rename but includes all remaining POSIX-like APIs. The number of buffers used in this configuration was reduced to the new minimum of six, which reduces the RAM requirement. Configuration options were otherwise the same as the Full POSIX configuration.

FSEssentials Configuration:

This configuration includes the full FSE API, which supports read, write and truncate on numbered files, as well as transactions. Configuration options of 512-byte block size and absolute minimum number of five buffers were used to determine code size and RAM requirement.

 

Feature
Configuration Options
Full POSIX Small POSIX FSEssentials
Preserves file system structure X X X
Preserves file data X X X
Never overwrites live data X X X
Transaction controls X X X
Metadata CRC X X X
API set POSIX-like POSIX-like
(not including rename)
Constrained
Number of files Variable Variable Fixed
Number of volumes Multiple Multiple Multiple
Maximum stack depth 824 744 556
Buffers (minimum) 12 6 5
Thread-safe X X X
File references Names Names Numbers
Code size (ROM) 17.6 KB 16.7 KB 10.6 KB
RAM requirement 8.4 KB 5.3 KB 3.9 KB
MISRA C: 2012 X X X

X signifies support.

 

Volume Size Comparisons

Block Size (in bytes) 512 1,024 2,048 ... 65,536
Max Volume Size 7.3 GB 61 GB 500 GB ...  256 TB

 

Fast, Consistent Mount Times

In cases where power failure may occur, Reliance Edge has a definite mount time advantage. There is no need to replay a journal or perform any other file system checks—Reliance Edge always keeps the disk in a known good state.

Better Reliability for a Better User Experience

Device reliability means different things to different people. Lack of reliability can have consequences ranging from a failed mission due to lost or corrupted data, warranty returns due to program corruption, or a frustrating user experience—the enemy of customer loyalty. Because Reliance Edge is a copy-on-write transactional file system live data is never overwritten making the system extremely fault tolerant, even after an unexpected system shutdown caused by power loss or component failure. True transactional architecture designed into Reliance Edge ensures rock-solid data reliability as Reliance Edge maintains complete metadata and file data integrity while providing the performance needed to create an optimal user experience. Dynamic Transaction Point™ technology gives developers complete compile-time and run-time control.