I am sorry I mislead you slightly. The checkpoint is written to different blocks. I did once consider the idea of separating the object headers from the file data into different "streams" but this didn't seem to give any significant benefits and was not really worth doing. What benefits can you see in using different blocks for object headers and data? On Friday 26 April 2013 09:22:15 Zavi wrote: > Is this a necessity? wouldn't it be better to have several "open" > blocks, used for various needs? say one for storing inodes and > checkpoints, another for storing data? maybe this is a bad example, > but I'm sute it's possible to think of a better one. > > On Fri, Apr 26, 2013 at 12:11 AM, Charles Manning wrote: > > On Thursday 25 April 2013 01:28:40 Zavi wrote: > >> I've been reading on MLC flash lately, and saw that erase blocks must > >> be written sequentially. Does this mean that YAFFS2 manages a single > >> MLC chip so that there is only one "open" erase block used for writing > >> in every point in time? and only when it is filled can data be written > >> to an other erase block? > > > > Yes > > > > Yaffs2 is log structured which means it writes as a sequential log. That > > means it only writes sequentially to one block at a time. When that block > > is full it finds another block to write to. > > > > The blocks that are written are not necessarily sequential, but writes > > within a block are. > > > > Yaffs2 will generally fill a block before moving to another block, but > > there are some exceptions: > > * If there is an error. > > * On every remount it starts with a new block. > > > > -- CHarles > > _______________________________________________ > yaffs mailing list > yaffs@lists.aleph1.co.uk > http://lists.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs