µC/FS Overview
You are here : Micrium
: Products : µC/FS :
Overview
µC/FS is a file system for embedded applications which can be used on any media, for which you can provide basic hardware access functions. µC/FS is a high performance library that has been optimized for minimum memory consumption in RAM and ROM, high speed and versatility. It is written in ANSI C and can be used on any CPU.
Main Features
- MS-DOS/MS-Windows compatible FAT12, FAT16 and FAT32 support (Subject to licensing).
OR
- Micrium proprietary EFS, a "FAT-free" Embedded File System.
- An optional module that handles long file names of FAT media.
- Multiple device driver support. You can use different device drivers with µC/FS, which allows you to access different types of hardware with the file system at the same time.
- MultiMedia support. A device driver allows you to access different media at the same time.
- OS support. µC/FS can be easily integrated into any OS. This allows using µC/FS in a multi-threaded environment.
- ANSI C stdio.h-like API for user applications. An application using the standard C I/O library can easily be ported to use µC/FS.
- Very simple device driver structure. µC/FS device drivers need only basic functions for reading and writing blocks. There is a template included.
- An optional device driver for NAND flash devices, which can be easily used with any kind of NAND flashes.
- An optional device driver for MultiMedia & SD cards using SPI mode or card mode that can be easily integrated.
- An optional IDE driver, which is also suitable for CompactFlash using either .True IDE. or .Memory Mapped. mode.
- An optional NOR flash (EEPROM) driver that handles different flash sector sizes.
Basic Concepts
API Layer
The API layer is the interface between µC/FS and the user application. It does contain a library of ANSI "C" oriented file functions, such as FS_fopen, FS_fwrite etc. The API layer does transfer these calls to the file system layer. Currently there are two FAT file system layers available for µC/FS, A Microsoft FAT compatible and a "FAT-free" Micrium proprietary file system layer.
|
 |
File System Layer
This layer does translate file operations to logical block operations. After such a translation, it does call the logical block layer with the corresponding device driver for a device.
|
Logical Block Layer
Main purpose of the logical block layer is to synchronize accesses to a device driver and to have an easy interface for the file system layer. The logical block layer does call a device driver to make a block operation. |
Device Driver
These are the low level routines to access your hardware. Structure of the device driver is simple to allow an easy integration of your own hardware. µC/FS has been designed to cooperate with any kind of hardware. To use specific hardware with µC/FS, a so-called device driver for that hardware is required. The device driver consists of basic I/O functions for accessing the hardware and a global table which holds pointers to these functions.
|
|