Posted July 1st, 2007 by Admin
"I’m trying to understand the relative merits of JFFS2 vs YAFFS2. The response on the YAFFS mailing list is quite positive as far as leading me to believe that there are actual products shipping."
Charles Manning replied:
At a technical level, it is very difficult to make X vs Y comparisons because there are many factors involved which manifest differently on different systems therefore ‘your mileage will vary’. But, as a general rule of thumb, the following might help:
1) YAFFS uses less run-time RAM to hold its state, so YAFFS scales better than JFFS2. There are quite a few systems using large NAND arrays (the largest partitions I know of are around the 6Gbyte mark).
2) YAFFS garbage collection is simpler and faster, typically making for better performance under hard writing.
3) YAFFS uses a whole page per file for headers, and does not provide compression. This means that JFFS2 is probably a better fit to small partitions. The flip side is that a lot of data (eg. MP3) does not compress very well, and enabling compression really hurts performance.
4) While YAFFS has been used on NOR, it does not fit very well (because YAFFS does not use erase suspend). Thus if you’re using smaller NAND partitions and using JFFS2 on NOR, then a JFFS2-only solution is very appealing.
All the above can generally boil down to: If you’re using less than about 64MB the pain vs gain might play in favour of JFFS2. As you increase partition size, YAFFS makes more and more sense.