public inbox for linux-mtd@lists.infradead.org
 help / color / mirror / Atom feed
From: Sam Ravnborg <sam@ravnborg.org>
To: "Jörn Engel" <joern@lazybastard.org>
Cc: linux-mtd@lists.infradead.org
Subject: Re: MTD_PHRAM - what filesystem to use?
Date: Sun, 11 Mar 2007 22:08:35 +0100	[thread overview]
Message-ID: <20070311210835.GA3794@uranus.ravnborg.org> (raw)
In-Reply-To: <20070311203122.GB17463@lazybastard.org>

On Sun, Mar 11, 2007 at 09:31:22PM +0100, Jörn Engel wrote:
> On Sun, 11 March 2007 21:05:08 +0100, Sam Ravnborg wrote:
> > 
> > At my new job we are planning to start usign a ARM9 based
> > design where we need to store data persistently.
> > 
> > Since the data are updated several times / minute the FLASH
> > devices are not suitable and therefore alternative solutions
> > are being looked at.
> > 
> > The most promising solutions semms to use battery
> > backed-up RAM.
> > >From Linux we could memorymap this area but using a filesystem
> > gives all sorts of extra bonusses so this is preferred.
> > 
> > I looked shortly at PRAMFS that seems to do the trick but PRMFS
> > seems unmaintained and not merged.
> > Then I stumbled over PHRAM.
> > I and pretty clear upon the basic parts lettign the RAM look
> > like any other FLASH device.
> > But then the question popped up.
> > 
> > What is the best filesystem to use on top of a PHRAM based
> > MTD device?
> > My first two ideas were to use either JFFS2 or ext2
> > (the latter with the blocklayer emulation).
> > But reading the documentation both looks like overkill.
> > 
> > The requirement so far is to gain maximum bebefit of the
> > avalable 100 kbytes of RAM.
> > There will be a limited number of files (< 500).
> 
> If you decide on battery-backed RAM, the PHRAM/JFFS2 combo would be the
> best existing solution.  Alternatively you could write a custom
> filesystem.

Thanks.
It could be a nice challenge to write my own filesystem
just for this - on the other hand JFFS2 despite the overhead
should fulfill my demand so I will most probarly stay with that.


> With JFFS2 you should carefully decide on a suitable erasesize.  The
> JFFS2 overhead can be minimized by tuning this number.  Most likely
> something small, 4KiB or 8KiB is optimal.
> 
> Yet another alternative would be to use flash.  The math is quite
> simple.  Example calculation:
> Update interval: 10s
> Updated data size: 10kB
> Required device lifetime: 10a
> JFFS2 overhead: 10%
> Flash durability: 100k erases
> 
> Write rate is 10kB / 10s * 1.1 = 1.1kB/s.
> Total written data in 10a is: 1.1kB/s * 31536000s/a * 10a = 346GB
> Required flash size: 346GB / 100k = 3468kB
> 
> So with the example numbers, you would only need a 4MiB flash chip.
> Those should be rather cheap.  But it remains your duty to redo the
> calculation with correct numbers and check for any mistakes I may have
> made.
> 
> Also make sure that your supplier guarantees 100k erases on the flash.
> At 10k erases, you would need a device 10x bigger.  1M erases, if
> available, are even better.
Thanks again.
When I have more exact numbers I will try to redo your math.

I assume that from a performance point-of-view the FLASH based version
suffer more than the RAM one - since it is simple to 'erase' RAM.

	Sam

  reply	other threads:[~2007-03-11 21:08 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-11 20:05 MTD_PHRAM - what filesystem to use? Sam Ravnborg
2007-03-11 20:31 ` Jörn Engel
2007-03-11 21:08   ` Sam Ravnborg [this message]
2007-03-11 23:40     ` Jörn Engel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070311210835.GA3794@uranus.ravnborg.org \
    --to=sam@ravnborg.org \
    --cc=joern@lazybastard.org \
    --cc=linux-mtd@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox