Flash Memory Wearing Qeustions

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



Hi.

Our team is going to realize a software component running under
Windows CE 6.0 which has to record a variable amount of data:
- Synchronous data (say 200 b) every 15 minutes for a dozen of years
(with older data replaced by new one if needed).
- Asysnchronous data (not really predicatable, but for this example we
could imagine 400b per day).

Data can be asynchronously read. The target storage device is a
Samsung NAND flash memory.
We also need to persist data (and, of course, in a consistent way)
accross power failures.

We wonder about flash memory wearing issues. Currently we have
acquired this knowledge:
- Writing data on flash can be performed only to a block granularity
(128KB for our hardware). Writing smaller chunks needs to erase and
rewrite the whole block.
- There is a limited number of writings (block erase and re-write
sessions) per block before the block itslef becomes unreliable.
- FAT file systems writes the file's Directory Entry Structure each
time the file is accessed (to update the Last Access Field) [source:
http://www.maverick-os.dk/FileSystemFormats/FAT16_FileSystem.html]
- Corruption of a block can compromise each file using that block.

It seems that under these conditions the Directory Entry Structure of
the synchronous data store will be rewritten ate least 35000 times per
year, but probably twice this number because of the double update
(Last Access Date and Last Write Time). Furthermore, it's quite sure
the given structure will always reside on the same block accross its
lifetime. Also, the given structure can share the block of other
structures of files (further increasing the block wearing rate in
unpredictable ways).

Our questions are:
- Are our deductions correct?
- Is to manage the given scenery possible with "standard" Windows CE 6
components? (For example, by using different file system or by
correctly tuning a FAT?) If yes, how?
- Are there wear-leveling file systems for Windows CE? We weren't able
to find any.
- Is there a standard solution for data-acquiring devices mounting
Windows CE and storaging data on flash memory?

Thank you very much.

Erik.

.



Relevant Pages

  • Re: Flash Memory Wearing Qeustions
    ... "Henrik Viklund" wrote: ... We wonder about flash memory wearing issues. ... - FAT file systems writes the file's Directory Entry Structure each ... Are there wear-leveling file systems for Windows CE? ...
    (microsoft.public.windowsce.embedded)
  • Re: Creating a Windows File System Driver...
    ... Please point out some useful file systems done with the GNU ntifs.h, ... The claim that the IFS kit was ... Don Burn (MVP, Windows DDK) ... >> drivers, expect 18-24 months of hard work to have a file system. ...
    (microsoft.public.win32.programmer.kernel)
  • Re: Registry Destruction in progress...
    ... so now we have different file systems in different countries. ... which I found to be problematic when Windows ... sometimes they would have conflicting versions of DirectX (e.g., ...
    (rec.games.computer.ultima.dragons)
  • Re: Performance benchmarks pitting FreeBSD against Windows
    ... provided by Kris ?Kenneway? ... it's nice to actually know why Windows is ugly underneath. ... benchmarks to what Kris provided if its ever been done. ... ZFS was very good, but not so much when compared to Linux file systems, ...
    (freebsd-questions)
  • Re: DCL versus Unix CLIs, was: Re: File output like Unix
    ... and yes, I do include those file systems of OpenVMS, Windows and Linux/Unix and most every other current operating system available here. ... In Unix, no filename has any implicit meaning. ... Windows, on the other hand, takes extension-based file typing to another level. ... Simply invoking FOO.DOC runs MSWORD without you invoking Word at all. ...
    (comp.os.vms)