ARM’s highest performing processor, extending the capabilities of mobile and enterprise computing. Read More...
YAFFS (Yet Another Flash File System) is the first File System (FS) developed specifically to take account of the particular properties of NAND and NOR Flash chips. Since 2002 it has been widely used in embedded processor products numbering many millions around the world and its development continues.
YAFFS is a log-structured (journalling) FS designed to be very robust under power failure and under the inevitable chip wear. It spreads data over the whole memory space available, does fast 1-bit Hamming Error Correction, boots quickly and has a small RAM footprint (much smaller than JFFS2). It handles various chip Page sizes, and has a well-developed and deterministic garbage collection process.
YAFFS works equally well with big-endian and little-endian 32-bit and 64-bit processors and is written in portable C.
YAFFS provides clean integration with many operating systems' File System layers, and has a stand-alone option that supports a number of direct POSIX-Style file system calls.
While often used with Linux, it has been used with several others OSs such as ThreadX, eCos, and vXworks. A 'wrapper' is available to allow it to be used with Windows CE 5 and 6. It has been closely coupled to the eCos RTOS, for which a joint Licence is available from eCosCentric: http://www.ecoscentric.com
YAFFS is used in high-volume products in mobile entertainment and communication, in consumer products like sewing machines and in critical applications in specialised applications in fields such as vehicle control, surveying, intrusion monitoring, aerospace and point-of-sale
YAFFS is freely available to those wanting to try it out, under GPL: http://www.gnu.org/copyleft/gpl.html Documentation is also freely available. You can take a current copy from http://www.yaffs.net at any time so that you can try it, modify it and test it with no obligation.
Aleph One sells a Licence to companies that choose not to work with the Source Code Release requirements of GPL, which apply if you start to sell a product using YAFFS. http://www.gnu.org/copyleft/gpl.html