UFFS

UFFS is an ultra low cost flash file system for embedded system.
Download

UFFS Ranking & Summary

Advertisement

  • Rating:
  • License:
  • GPL
  • Price:
  • FREE
  • Publisher Name:
  • Ricky Zheng
  • Publisher web site:
  • http://gouffs.googlepages.com/

UFFS Tags


UFFS Description

UFFS is an ultra low cost flash file system for embedded system. UFFS is an ultra low cost flash file system for embedded system.UFFS is a NAND flash file system designed for embedded system, it performs some unique and advanced features:Low cost:For NAND flash with 512 page size:NAND flash | Total Blocks | Buffers/Caches | Total RAM cost 128M | 8192 | 40/30 | 164K 32M | 2048 | 40/30 | 68K 16M | 1024 | 10/10 | 26KTree Nodes: 16 * toatl_blocksPage Buffers: page_size(512) * buffers (10 ~ pages_per_block)Block info caches: (14 * pages_per_block) * block_info_caches ( 5 ~ 20)Total Memory usage = Tree Nodes + Page Buffers + Block info caches + Others(1~2K)For NAND flash with 2K page size:NAND flash | Total Blocks | Buffers/Caches | Total RAM cost 512M | 8192 | 40/30 | 180K 128M | 512 | 40/30 | 70KTree Nodes: 16 * toatl_blocksPage Buffers: page_size(2048) * buffers (10 ~ pages_per_block)Block info caches: (14 * pages_per_block) * block_info_caches ( 5 ~ 20)Total Memory usage = Tree Nodes + Page Buffers + Block info caches + Others(1~2K) Fast bootingUFFS read only one spare area for each NAND flash block to build up the in-memory nodes tree. Typically, UFFS needs less then 1 second to mount a full loaded 128 Mbytes NAND flash. Superb ReliabilityGuaranteed integrity across unexpected power losses. Bad-block tolerant, ECC enable and ware-levelingNothing new for flash file system, but UFFS implements these in a simple yet effective way. No garbage collection needed for UFFSUFFS collect the 'dirty blocks' on the fly, no garbage collection needed.Support direct flash interface, no operating system neededUFFS can be build on top of direct flash interface,easy to port to any embedded system.Fully testedUFFS is fully tested on PC (via UFFS PC emulator). Moreover, UFFS is not just 'proof-of-concept' but has been successfully used in real world product for tens of thousands of copies.What UFFS "IS", "IS NOT" ?UFFS is not a Linux kernel module.UFFS is not running in a separated thread rather than application.UFFS is a library to be linked with your embedded application. UFFS should be used when JFFS/YAFFS can't be used (because of the insufficient of memory)UFFS is not the substitute of JFFS or YAFFS.Why UFFS ?· Hardware resource is limited (typically 64~512K RAM), but need a reliable flash file system· JFFS/JFFS2 sucks (useless without Linux/MTD, also memory monster)· YAFFS/YAFFS2 is excellent, but still consumes too much memory· Others ? ... not available... (open source of course)


UFFS Related Software