Flash File System

Joel Sherrill joel at oarcorp.com
Wed Feb 11 15:56:36 UTC 1998



On Wed, 11 Feb 1998, Steven Johnson wrote:

> I need a Flash File System for a project i am building with the RTEMS. I
> will attempt to create this so that it can be incorporated into the project
> as a whole.

This would be a welcome addition to RTEMS and we would welcome it.

> 1. Is there anything i should be aware of before i do this. Especially with
> regard to submitting the code for inclusion in future versions of RTEMS.

There are only two things to be aware of.  First are the technical issues
which are basically that the implementation be technically solid,
portable,
etc., etc.  We encourage having user documentation on submissions of this
magnitude.  This documentation must include configuration, setup,
initialization, etc. so someone else can use the code.  We also beg
for test code.  It is desirable that this test code be supplied with
support for running on a CPU simulator such as sis.  In this case, I
think this means that you would have to support putting the file system
into RAM.  This would probably entail having a defined device driver
interface for non-volatile memory and having one driver which simply
used RAM.  This would greatly simplify the testing on everyone's part --
both during implementation and later for maintenance.

>From the "legal" viewpoint, the code must be unencumbered.  The code
must be able to be distributed with RTEMS under terms no more restrictive
than RTEMS itself.   And RTEMS terms are not restrictive.  You should
not violate patents or include proprietary information.  We do not
ask you to transfer your copyright to anyone else.

None of this has ever presented anyone too much trouble.  RTEMS has
a very good user base and a number of impressive submissions have
been made over the life of the project.

We are happy to discuss this stuff in specifics off-line.

> 2. Does anyone have any feeling for what they would like in a driver like
> this. I will specifically target my needs, but if there is anything i can
> include (or not preclude) then i will attempt to. (Time Permitting)

As you might expect, I have a few ideas. :)

The file system format should be compatible with standards -- FFS, etc.

It should integrate through the libio support inside RTEMS.  This lets
you use the libc interface to access it.

They device drivers should be written in such a way that they are
portable.
I can talk to you about this offline.


> 3. Does anyone have a good up to date specification for a Flash File System?
> The only one i have is a Microsoft specification that leaves a bit to be
> desired.
> 
> At the moment i think it will be a Microsoft FFS, but i will extend it
> slightly to handle long file names. (The Published microsoft spec i have
> hints at long filenames, but doesnt provide any clear information on them)

Well you are already on the standard part. :)

An updated version of the FFS document may be included in the WinCE
CD's that have been so freely distributed.  They were included a few
months ago with Embedded Systems Programming.  Does anyone have a set
of them handy to see if the information is there?

This information may also be buried on the MS WWW site or available from
MS-Press.

--joel
Joel Sherrill                    Director of Research & Development
joel at OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
   Support Available             (205) 722-9985






More information about the users mailing list