Re: Sync option destroys flash!

Lennart Sorensen
2005-05-17T13:30:33Z

On Fri, May 13, 2005 at 09:05:34PM -0400, Michael H. Warfield wrote:
> Yah know... I've been thinking about this... In a former life, we use
> to do something very similar with a virtual memory system on some real
> early (80's vintage) networked VM workstations (back when memory was
> actually valuable and scarce).
>
> So... This would have to work with a list or pool of "spares" that are
> not allocated to the "visible" file system. We used a "least used"
> algorithm for that VM system. This would seem to be a "replace as
> rewritten" algorithm. Each time you write to the file system, it grabs
> a block off the head of the spares list, writes your data to it, and
> then adds the old block to the tail of the list. Pretty basic stuff and
> it doesn't have to track what kind of high level file system you are
> using or know anything about its structure. Cool...

Really good wearleveling will even move blocks that "never" seem to
change to the more used blocks ones in a while to spread out the wear to
blocks that have static content in them. After all if 90% of your flash
never changes, and you run a log in the last 10%, you will still wear
out that 10% first if you don't occationally move some of the static
content to the 10% with some wear, and start running your log on the
previously unused area.

I was told by someone from SanDisk that this is how _some_ of their
flash media work (at least on the new ones).

I was actually surprised since I assumed at the time this was how all of
the CF cards worked.

Len Sorensen