Many small files instead of one large files - writing, wearing, mount-time?
Martin Egholm Nielsen
martin at egholm-nielsen.dk
Tue Mar 8 03:59:36 EST 2005
Hi there,
I'm about to make a choice of design. I have many many (i.e. O(3) -
[0-9]*1000) "resources" in an application that need their states flushed
to NAND-JFFS2 whenever they change - which happens with very different
frequencies for different resources.
Hence, me initial strategy was to have a file in NAND for each resource.
However, I noticed that mount-time increased "severely" when many files
were put on the device, and doing an "ls" first time on the
device/directory took lots of time as well.
Unfortunately low mount-time is one of the factors giving the user a
good experience with the system, so I started considering another
strategy - namely one large file to hold all these states.
However, I'm a bit concerned how fopen( ..., "rw" ) is handled
underneith when I flush/sync the filedescriptor if I only mess with a
small part of the file. Is the entire file flushed to NAND once more, or
does Linux+JFFS2 handle this, and only write the parts (inodes) that are
affected...
BR,
Martin
More information about the linux-mtd
mailing list