Embedded Software Solutions

 

File System

emFile is a file system for embedded applications which can be used on any media, for which you can provide basic hardware access functions. emFile 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.
  • Multiple device driver support. You can use different device drivers with emFile, which allow you to access different types of hardware with the file system at the same time.
  • Multiple media support. A device driver does allow you to access different medias at the same time.
  • OS support. emFile can easily be integrated into any OS. In that way you can make file operations in a multithreaded environment.
  • ANSI C stdio.h like API for user applications. An application using standard C I/O library can easily be ported to use emFile.
  • Very simple device driver structure. emFile device drivers need only very basic functions for reading and writing blocks. Therefore it is very simple to support your custom hardware.
  • Generic device driver for SmartMedia cards, which can easily be used with any kind of card reader hardware.

Basic Concepts

API Layer

The API layer is the interface between emFile 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 is only a FAT file system layer available for emFile, but the API layer can deal with different file system layers at the same time. So it is possible to use FAT and any other file system at the same time with emFile.

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. emFile has been designed to cooperate with any kind of hardware. To use specific hardware with emFile, 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.

 

For more information please contact the MicroWay sales team:
Head Office
MicroWay Pty Ltd
PO Box 84,
Braeside, Victoria, 3195, Australia
Ph: 1300 553 313
Fax: 1300 132 709
email: sales@microway.com.au
ABN: 56 129 024 825
Sydney Sales Office
MicroWay Pty Ltd
PO Box 1733,
Crows Nest, NSW 1585, Australia
Tel: 1300 553 313
Fax: 1300 132 709
email: sales@microway.com.au
ABN: 56 129 024 825
New Zealand Sales Office
MicroWay Pty Ltd (NZ)
PO Box 912026
Victoria Street West
Auckland 1142, New Zealand
Tel: 0800 450 168
email: sales@microway.co.nz
buynow.gif (557 bytes)


International: call +61 3 9580 1333, fax +61 3 9580 8995

 

© 1995-2008 MicroWay Pty Ltd. All Rights Reserved. Terms and Privacy Policy.