storage selection for embedded devices

M. Warner Losh imp at bsdimp.com
Tue Oct 14 17:02:05 UTC 2008


In message: <48F4C02F.1060407 at syx.ca>
            Philip Mullis <philip.mullis at syx.ca> writes:
: I was wondering if anyone has extended experience in this area with
: embedded devices.
: 
: I have a fixed embedded image which runs happily out of a 1Gig compact
: flash card.
: 
: However I have some applications that I want to install to my device
: that will perform writes alot to the cf.
: 
: I'm worried about reliability and degradation of the cf, so to get
: around this I'm looking at using an external usb hard drive or memory
: stick (I have 2 usb ports on my embedded devices, its a pcengines alix2c3)
: 
: Is this a methodology most people use? or is simply buying a larger
: compact flash card the recommended approach.

I've deployed CF cards into systems for a number of years (since
2000).  They are way more reliable than spinning media in the
environments that I deploy my company's gear into.

We have most of the CF dedicated to a read-only partition.  A small
modification partition was also provided.  We also had a 'fail safe'
tarball on the read-only part of the media that would revert the box
to a default state that was sane in the event of data corruption on
the /mod filesystem.  The reason we bothered with that in one of our
products was due to a FreeBSD bug in the vm that caused oddness in the
mmapped file we used to store our configuration.

I've also tried to wear out a CF part by writing to the part, both
directly and through a filesystem, millions of times.  I was unable to
keep a machine running long enough to cause a failure (my mistake was
doing it in a lab where people liked to unplug things).  We had about
one part in 100 wear out in the first year of being in the field.  It
was believed, but never confirmed, that many of these failures were
due to static discharge when changing the part out rather than a
failure of the flash cell...

: Ive read the sandisk wear leveling white paper, yet I also hear many
: people such as professional photographers swearing by the write once
: rule with cf cards. This leaves me to believe they are misinformed on
: the technology or the white paper is wrong.

They are misinformed.  Very misinformed.  Given how cheap CF cards are
these days, it is cheap insurance for them to do a 'write once' with
their pictures.  Since their living is critically dependent on every
picture being perfect, I can see their paranoia.  Especially if
there's a step that involves taking the flash from the camera and
putting it into a reader.  The more times you do this, the greater the
chance for a static event to damage the part.  On the other hand, my
main console server is running off a SD part that's been through the
wash three times (bad habit of mine: leaving these things in my jeans
and not checking the pockets carefully enough).

: If someone could provide further information or recommendations that
: would be greatly appreciated.

Hope this helps.

Warner


More information about the freebsd-embedded mailing list