SEGGER embOS他FreeRTOSなどRTOS環境は自由に選択可能。SEGGER embOSであれば、すぐに利用可能
ハードウェアドライバー層を変更することでユーザアプリケーションへの変更を最低限にストレージ種類の変更やデバイスの変更へ対応します。(NOR / NAND , ハードウェアディスコンによるデバイス変更など)
すべてANSI-Cソースコードで提供します。
SEGGER Embedded Studioをはじめ、様々なIDE / コンパイラで利用できます。
マイコン依存性のないANSI-Cソースコード 8/16/32bitマイコンで利用頂く事が可能。
emFile IDEおよびCompactFlashデバイスドライバを使用して、IDEハードディスクドライブおよびCompactFlash(CF)メモリカードに保存されているデータにアクセスできます。emFileでは、ほぼすべてのATA互換ハードディスクドライブ、コンパクトフラッシュデバイスをサポートします。
emFile NANDドライバーを使用すると、ファイルシステムレイヤーは、NANDフラッシュデバイスとの間でデータのブロック(論理セクター)を効率的に読み書きできます。NANDフラッシュデバイスの識別、NAND物理ブロックの消去、ページ単位でのデータの書き込みなど、NANDフラッシュへのアクセスに関するすべての詳細は、NANDドライバーによって内部的に管理されます。
NANDフラッシュデバイスは、0ベースの論理セクターインデックスによって識別される論理セクターの配列として上位ファイルシステム層に提示されます。emFileでは、ガベージコレクション、不良ブロックの処理などをサポートする高性能ドライバを提供します。
NORドライバーを使用すると、ファイルシステムレイヤーは、NORフラッシュデバイスとの間でデータのブロック(論理セクター)を効率的に読み書きできます。NORフラッシュデバイスの識別、NOR物理ブロックの消去、ページ単位でのデータの書き込みなど、NORフラッシュへのアクセスに関するすべての詳細は、NORドライバーによって内部的に管理されます。NORフラッシュデバイスは、0ベースの論理セクターインデックスによって識別される論理セクターの配列として上位ファイルシステムレイヤーに提示されます。
ドライバはパラレルおよびSPI(シングル、デュアル、クワッドモード)バスインターフェースをサポートします。
SFDPとCFI式フラッシュデバイスのデバイス情報は自動的に認識します。
emFileには、2つの異なるNORドライバーが付属しています。
ブロックマップNORドライバーはRAM使用量を削減するように設計されており、セクターマップドライバーは高速書き込み操作を実現します。両方のドライバは同じNORフラッシュデバイスをサポートしているため、NORドライバの選択はメモリ使用量と書き込みパフォーマンスの間のトレードオフです。
SD / MMCドライバーは、SD / SDHC / SDXCカード、MMC / MMCplusカード、e.MMCストレージデバイスなどのSD / MMC互換ストレージデバイスにアクセスするために使用でき、アプリケーションに大容量のストレージを低コストで提供します。SD / MMCドライバーは、SD / MMC互換ストレージデバイスの識別と初期化を処理し、接続されたストレージデバイスでサポートされている可能な限り最高の転送モードを使用してデータ転送を非常に効率的に実行します。SD / MMCドライバーは、リソースに制約のあるシステムで使用できるように、最小限のROMとRAMしか必要としません。
SD / MMC互換のストレージデバイスは、SD / MMCドライバーがすべてのデータ交換を開始する比較的単純なコマンドベースのプロトコルを実装します。データは、SPIモードとバスモードの2つの異なる動作モードを介して交換できます。emFileには、これらの各動作モード用のドライバーが付属しています。
RAMディスクは、パーティションとして使用するために割り当てられたメモリの一部です。RAMディスクドライバはそのメモリの一部を取得し、それをストレージデバイスとして使用します。このストレージデバイスは、フォーマット、マウント、ファイルの保存などが可能です。RAMのすべてのビットは、システムの健全性にとって重要です。RAMディスクが大きいほど、システムで使用できるメモリは少なくなります。