NAND Write operations

Sameer Naik sameer.subscriptions at damagehead.com
Tue Apr 13 05:11:25 UTC 2010


Hi,

On Tue, Apr 13, 2010 at 3:36 AM, Charles Manning
<manningc2 at actrix.gen.nz> wrote:
> You'd probably do far better to ask questions like this on the linux-mtd list
> or similar.

Thanks. Will be heading there.
>
> I'm the author of the yaffs file system, so I can answer some of your
> questions though.
>
> Pretty much all flash file systems or flash management layers such as UBI
> perform at least some degree of wear levelling. This means that there is some
> sort of logical to physical, or other, policy so that the writes don't happen
> in the same place. That means those writes to a certain file will end up
> being spread across many different blocks, thus meaning that writes to one
> particular file won't wear out one part of flash.

Read a bit about this on the wikipedia entry on Flash devices. On an
embedded device based on linux where changes in files are done by the
system itself (and not a user adding or deleting files), where these
changes are not so much. Is it always a good idea to move certain
files that change in a ramfs.


Regards
~Sameer

>
> And yes, the endurance depends on the type of flash. Some are of the order of
> 10^6, some are only 10^3.
>
> Worst I've seen is 10^2, but that was for a "bootloader" section and not
> designated for file usage.
>
> -- CHarles
>
> On Tuesday 13 April 2010 07:58:22 Cathey, Jim wrote:
>> I was concerned enough that our "/" fs is read-only,
>> with symlinks for everything interesting down into
>> /tmp/etc instead.  The rcS script made the initial
>> set from a bunch of template files.
>>
>> It, of course, was an embedded device that happened
>> to be based on Linux, not some sort of "embedded Linux"
>> device where J. Random Developer would expect to function
>> happily.
>>
>> Last I heard, the worst of the NAND flash devices was
>> on the order of 10^3-10^5 writes, not 10^6.
>>
>> -- Jim
>>
>> -----Original Message-----
>> From: busybox-bounces at busybox.net [mailto:busybox-bounces at busybox.net]
>> On Behalf Of Sameer Naik
>> Sent: Monday, April 12, 2010 12:03 PM
>> To: BusyBox Developer List
>> Subject: NAND Write operations
>>
>> Hi,
>> This may not be the right place to ask this question, but i only ask
>> this because i believe most of the developers on this list work
>> primarily with embedded systems. So here goes it.
>>
>> Normally on a linux system network configuration related files like
>> resolv.conf and ifcfg-eth*, etc are stored in the /etc folder. These
>> files are normally updated at boot or precisely when the network is
>> configured. NAND memory have a ~100K write cycles before which write
>> could start failing.
>> This number is rather very large, hypothetically even if the network
>> is configured 10 times a day the flash is good for around 27 years
>> (100000 / (365 * 10)).
>>
>> Secondly, considerable amount of fragmentation could occur due to
>> small updates on the file system
>>
>> I may be getting a little paranoid here, but how much is this of
>> cencern on a production system.
>>
>> Regards
>> ~Sameer
>> _______________________________________________
>> busybox mailing list
>> busybox at busybox.net
>> http://lists.busybox.net/mailman/listinfo/busybox
>> _______________________________________________
>> busybox mailing list
>> busybox at busybox.net
>> http://lists.busybox.net/mailman/listinfo/busybox
>
>
> _______________________________________________
> busybox mailing list
> busybox at busybox.net
> http://lists.busybox.net/mailman/listinfo/busybox
>


More information about the busybox mailing list