In the maillist,I found that : > I have downloaded YAFFS from Aleph One. And I am tracing it's code now. > > I found that the document you write below£º > Wear leveling > > No wear leveling is explicitly used here. Instead we rely on two > "strategies": > > ¡¤ Reserving some blocks to cater for failure. You need to do this > anyway with NAND. The main purpose behind wear leveling is to prevent some > blocks getting more wear and failing. Since we expect, and handle, failure > this is no longer as important. > > ¡¤ The infrequent random block selection should prevent low-wear > blocks getting "stuck". > > But I did not find the ¡¸random block selection¡¹ code section in YAFFS. >>This has never been implemented. It is probably not required, but it would be >>possible to add this quite simply. >>-- CHarles I trace the code and find the function yaffs_FindBlockForAllocation, what it do is find a empty state block from start to end . In this manner ,how can you "random select block "? Regards. eq613