Information

YAFFS: the NAND-specific flash file system - Introductory Article

YAFFS stands for "yet another flash file system"(*). As far as I am aware, YAFFS is the only file system, under any operating system, that has been designed specifically for use with NAND flash. YAFFS is thus designed to work within the constraints of, and exploit the features of, NAND flash to maximise performance. YAFFS uses journaling, error correction and verification techniques tuned to the way NAND typically fails, to enhance robustness. The result is a file system that exploits low-cost NAND chips and is both fast and robust. YAFFS is highly portable and runs under Linux, ucLinux and Windows CE. YAFFS is an open source project.

YAFFS Overview

YAFFS is a filesystem designed specifically for the characteristics of NAND flash. Its primary features are:
  • Fast - much faster than alternatives
  • Easily ported (currently ported to GNU/Linux, WinCE, eCOS, pSOS, VxWorks, and various bare-metal systems)
  • Log structured, providing wear-levelling and making it very robust
  • Supports various flash geometries including 2KB and 512-Byte page NAND flash chips
  • Very fast mount - almost immediate startup
  • Typically uses less RAM than comparable File Systems
  • Flexible Licensing suitable for most circumstances
This page gives an overview of the project - what is available, how it works, how to use it, developer resources, and licensing options.

HOWTO incorporate YAFFS

Simple HOWTO for getting started with YAFFS and using it as a root filesystem. If you just want the quick start info - read this.

YAFFS Development Notes

Notes on how to use YAFFS and some details of the internal structures - very useful if you want to mess with the code. This doc is included in the download.

YAFFS 2 Specification and Development Notes

The initial specification for YAFFS version 2. Describes the development of YAFFS to deal with next-generation NAND chips which have larger (2Kb) pages and don't allow page rewrites. The new design will be significantly faster (write: 1.5x-5x, delete: 4x, garbage collection: 2x) and have 25-50% lower RAM footfrint.

YAFFS Spec

The initial specification for YAFFS. Circa 2002. Details of the filing system, including short backgrounder. Read this if you want to know what it is, what it does and how it works. This doc is included in the download.

YAFFS Talk

Paper investigating a log management & crash recovery mechanism

This provides a link to a PDF of a paper by Taiwanese scholars.

Comparison between YAFFS (YAFFS2) and JFFS2

If you are trying to decide between YAFFS and JFFS2 then this note will give you an idea of the relative advantages of each.

YAFFS Licence FAQs

Some of the obvious questions about the circumstances in which you do and do not need a Licence for YAFFS
Syndicate content

Back to top