On Thu, September 30, 2010 11:01 pm, Delio M. DeMoura wrote:
I find that USB drives usually fail at the USB connector. The flash
memory
itself almost never fails.
Wish it were so. You can read online how some people formatted their USB
flash stick using the Ext3 filesystem, and the flash stick failed very
soon afterward due to the journal for the filesystem overwriting the same
section of the flash memory too many times.
I had a customer that used Ext3 on a CF card used for an embedded computer
against my recommendation, and the CF card failed within a few months of
very light use. Probably for the same reason.
I don't doubt this, the uC on flash sticks usually doesn't do any wear
leveling. You (before you take this the wrong way, I mean anyone, not you
particularly) should really use a FS that does wear leveling and is meant to
be used on MLC NAND devices if the device is dumb (as in the case of a flash
stick). Bad/cheap MLC flash may only last ~1k erase cycles.
You could prove the concept by using 1 CF card for a journal and 1 for data,
and see if the CF holding the journal fails earlier.
Flash memory has improved as to how many writes it can tolerate, but it's
hard to know when you buy one whether you get a version that can tolerate
a higher number of overwrites.
MLC = Multi-Level Cell (2+ bits per cell, currently only 2)
SLC = Single-Level Cell (1 bit per cell)
The number of writes per block may get worse with the next generation of MLC
NAND which is using a denser storage setup, which I believe is going to
store 3 bits per cell, as opposed to 2 bits per cell that current MLC NAND
does. That's twice as much resolution needed to accurately determine the
level of all 3 of those bits. SLC flash stores 1 bit per cell, and is
generally rated at 10x as many erases per cell compared to MLC - ie 10x
longer life cycle. Less complex EDC (Error Detection + Correction) is used
for SLC as far as I know, since there is more differentiation and only two
voltage levels to deal with in a cell instead of 4.
There are still quality differences within each flash type, but generally an
SLC part will be better than an MLC part - and much more expensive. End user
devices using SLC will generally advertise the fact that they do so.
I have a couple of laptops with SSD's in them and beat them up pretty
good.
So far so good.
For USB flash and CF cards I recommend using the ext2 filesystem because
it's unjournaled. I've yet to have a CF card using ext2 fail, and I've
run some of them for 5 to 7 years.
LogFS is also a new filesystem that seems to be meant for USB and CF
cards, but it's not considered stable yet. I haven't tested it yet, but
I'm looking forward to trying it out when it's a little more mature so
that other machines can read it.
I've never seen anything about LogFS before. Too bad you can't use
JFFS/UBIFS on top of CF/USB sticks..
-Frank
_______________________________________________
Mid-Hudson Valley Linux Users Group http://mhvlug.org
http://mhvlug.org/cgi-bin/mailman/listinfo/mhvlug
Upcoming Meetings (6pm - 8pm) MHVLS Auditorium
Oct 6 - Creating Browser Extensions for Firefox and Chrome
Nov 3 - Open Source Hardware: Bugs, Beagles and Beyond
Dec 1 - IBM's Open Client Deployment