I understand that flash media uses wear-levelling algorithms to spread multiple writes on a single logical sector to multiple physical sectors, extending the life of the media. However, this requires that metadata be stored somewhere to control this process. How do common wear-levelling algorithms avoid writing this metadata to the same location all the time (thus defeating the point of wear-levelling)?
tl;dr:
Special filesystems and/or microcontrollers. If you really want to know EXACTLY what happens... gb2/Electrical or Computer Engineering/
Name:
Anonymous2006-10-21 18:15
Yes, I've read that. The microcontroller (in the case of USB keys running vfat and the like) would need to store its data somewhere, though. Where would it store it? If it puts it on the flash media, the repeated writes to that control section will destroy that and render the entire device useless before any other section of the drive fails. The wikipedia article does not address this issue.
Name:
Anonymous2006-10-23 10:00
Christ, do you even know what a microcontroller IS? And did you read the linked pdfs on the wear leveling page? They have thier own storage. Sometimes even flash memory. (TIME PARDOX?)
But really, if you want to know how this shit works, take a few classes at your local community college or at least pick up a few textbooks. Otherwise, you'll always run into an abstraction wall before you really get started.
Name:
Anonymous2006-10-30 17:42
Log-structuring a'la JFFS would win, if it weren't for garbage collection. Do that on NOR flash without wiping old storage in the background, durr hurr.