On Sep 29, 2008, at Sep 29, 2008, 7:11 PM, Christer Weinigel wrote:
Martin K. Petersen wrote:
"Christer" == Christer Weinigel <christer@xxxxxxxxxxx> writes:
Christer> Of course it won't behave like a hard drive, but it would
be
Christer> nice if there was a file system with performance that
didn't
Christer> suck as badly on a compact flash.
Well, you are limited by the capabilities of the FTL. And as far as
CF goes the FTL is usually pretty braindead.
Yeah, I wish some flash manufacturer would do the right thing and
just stick some NAND chips and some PCI/PCIe glue on a CardBus/
ExpressCard. Something that allows a Linux driver to talk directly
to the flash chips and then a simple DMA engine to do bus mastering
block transfers to and from memory. We could then run yaffs or
whatever we wanted on it with no translation layers at all in between.
But as far as CF is concerned I have tested many and not found a
single one that is suitable for a regular (random) filesystem write
workload. To the extent that for embedded devices I ended up putting
a root filesystem tarball on the CF and unpacking it into ramfs
during
boot.
And just to give you an idea: I'm getting two orders of magnitude
less
random write ops on a (high-performance) CF than on a flash SSD from
the same vendor. In both cases with I/O aligned to the flash page
boundary.
That sounds just horrid. Oh well, I won't have much choice when my
hard drive dies, drives in this form factor are not manufactured any
more and the only thing that will fit into the slot is a Compact
Flash card or maybe with some hacking a USB drive. :-)
Speaking in general terms...
One approach you might consider in the meantime is to construct a
LiveCD type system on your USB drive, and reserve a separate writable
partition for storing your home directory.
LiveCD systems are stored in compressed images. The root file system
is expanded in one sequential shot and loaded into the system's RAM to
mitigate the expense of seeks on optical media. But the root file
system is also read-only, which is ideal for flash media.
Check out http://www.pendrivelinux.com/ for details.
--
Chuck Lever
chuck[dot]lever[at]oracle[dot]com
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html