UBIFS

UBIFS
Developer(s)Nokia with help of University of Szeged
Full nameUnsorted Block Image File System
Introduced2008; 17 years ago (2008) with Linux kernel 2.6.27
Structures
Directory contentsB+ trees
Limits
Allowed filename
characters
Any byte except NUL and forward slash "/"[citation needed]
Features
ForksYes
AttributesYes
File system
permissions
Unix permissions
Transparent
compression
Yes
Other
Supported
operating systems
Linux

UBIFS (UBI File System, more fully Unsorted Block Image File System) is a flash file system for unmanaged flash memory devices.[1] UBIFS works on top of an UBI (unsorted block image) layer,[2] which is itself on top of a memory technology device (MTD) layer.[3] The file system is developed by Nokia engineers with help of the University of Szeged, Hungary. Development began in earnest in 2007, with the first stable release made to Linux kernel 2.6.27 in October 2008. [4]

Two major differences between UBIFS and JFFS2 are that UBIFS supports write caching,[5] and UBIFS errs on the pessimistic side of free space calculation.[6] UBIFS tends to perform better than JFFS2 for large NAND flash memory devices.[7] This is a consequence of the UBIFS design goals:[8] faster mounting, quicker access to large files, and improved write speeds. UBIFS also preserves or improves upon JFFS2's on-the-fly compression, recoverability and power fail tolerance.[8] UBIFS's on-the-fly data compression allows zlib (deflate algorithm), LZO or Zstandard.

UBIFS stores indexes in flash whereas JFFS2 stores filesystem indexes in memory.[9] This directly impacts the scalability of JFFS2 as the tables must be rebuilt every time the volume is mounted. Also, the JFFS2 tables may consume enough system RAM that some images may be unusable.

  1. ^ Jonathan Corbet (2 April 2008). "UBIFS". LWN.net. Retrieved 18 December 2016.
  2. ^ "UBIFS – UBI File-System: Big red note". 22 January 2015. Retrieved 18 December 2016. It does not work on top of block devices. UBIFS was designed to work on top of raw flash.
  3. ^ "UBIFS – UBI File-System: Overview". 22 January 2015. Retrieved 18 December 2016.
  4. ^ Artem Bityutskiy (27 March 2008). "UBIFS – new flash file system". Retrieved 18 December 2016.
  5. ^ "UBIFS – UBI File-System: Write-back support". 22 January 2015. Retrieved 18 December 2016.
  6. ^ "UBIFS FAQ and HOWTO: Why does df report too little free space?". 18 December 2015. Retrieved 18 December 2016.
  7. ^ "UBIFS – UBI File-System: Scalability". 22 January 2015. Retrieved 18 December 2016.
  8. ^ a b Bityutskiy, Artem; Hunter, Adrian (24 September 2008). "UBIFS File System" (PDF). p. 9.
  9. ^ Adrian Hunter (27 March 2008). "A Brief Introduction to the Design of UBIFS" (PDF).

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Nelliwinne