Bart Van Assche wrote:
For most Linux filesystems you really need wear leveling. E.g. ext3's superblock is at a fixed location and gets overwritten frequently. Without wear leveling you risk that the flash sector where the superblock resides wears out early.
Compact Flash (and other similar media) does wear levelling, so essentially, even if we write to the same fixed location, in reality, it will mostly go to a different area on flash each time. As Compact Flash and its wear levelling does not know about free space on the filesystem, the wear levelling's effectiveness can be only limited - writes won't spread on the whole free area of the flash. Does anyone know how wear levelling is done in these devices? Perhaps it will differ from a manufacturer to manufacturer, but I guess they have a free area we normally use to store data, and some reserved area used just for wear levelling and bad block handling, but that's just my guess.
When using ext3 on a CompactFlash, you can limit the number of writes to the CompactFlash significantly by mounting the medium with parameters like noatime,nodiratime,commit=300.
noatime implies nodiratime, so there is no need to add the latter. -- Tomasz Chmielewski http://wpkg.org -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html