FACTOID # 4: China's labor force stands at 706 million people, almost three times that of Europe and twice that of North and South America combined
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RELATED ARTICLES
People who viewed "JFFS2" also viewed:
RECENT ARTICLES
More Recent Articles »
 

SEARCH ALL

FACTS & STATISTICS   

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > JFFS2

The Journalling Flash File System version 2 or JFFS2 is a log-structured file system for use in flash memory devices. It is the successor to JFFS. JFFS2 has been included in the Linux kernel since the 2.4.10 release. JFFS2 is also available for the eCos RTOS and RedBoot bootloader. The Log-Structured Filesystem (or LFS) is an implementation of a log-structured file system for NetBSD. It appears to be no longer completely functional as of NetBSD 2. ... A USB flash drive. ... The Journaled Flash File System (or JFFS) is a log-structured file system for use on NOR flash memory devices. ... Linux (IPA pronunciation: ) is a Unix-like computer operating system. ... The correct title of this article is . ... RedBoot is an open source application that uses the eCos real-time operating system Hardware Abstraction Layer to provide bootstrap firmware for embedded systems. ...

Contents

Features

JFFS2 introduced:

  • Support for NAND flash devices. This involved a considerable amount of work as NAND devices have a sequential I/O interface and cannot be memory-mapped for reading.
  • Hard links. This was not possible in JFFS because of limitations in the on-disk format.
  • Compression. Three algorithms are available: zlib, rubin and rtime.
  • Better performance. JFFS treated the disk as a purely circular log. This generated a great deal of unnecessary I/O. The garbage collection algorithm in JFFS2 makes this mostly unnecessary.

A USB Flash Memory Device Flash memory is a form of EEPROM (Electrically-Erasable Programmable Read-Only Memory) that allows multiple memory locations to be erased or written in one programming operation. ... zlib is an open-source, cross-platform data compression library. ... In computer science, garbage collection (also known as GC) is a form of automatic memory management. ... In mathematics, computing, linguistics, and related disciplines, an algorithm is a finite list of well-defined instructions for accomplishing some task that, given an initial state, will terminate in a defined end-state. ...

Design

As with JFFS, changes to files and directories are "logged" to flash in nodes, of which there are two types:

  • inodes: a header with file metadata, followed by a payload of file data (if any). Compressed payloads are limited to one page.
  • dirent nodes: directory entries each holding a name and an inode number. Hard links are represented as different names with the same inode number. The special inode number 0 represents an unlink.

As with JFFS, nodes start out as valid when they are created, and become obsolete when a newer version has been created elsewhere. In computing, an inode is a data structure on a traditional Unix-style file system such as UFS. An inode stores basic information about a regular file, directory, or other file system object. ...


Unlike JFFS, however, there is no circular log. Instead, JFFS2 deals in blocks, a unit the same size as the erase segment of the flash medium. Blocks are filled, one at a time, with nodes from bottom up. A clean block is one that contains only valid nodes. A dirty block contains at least one obsolete node. A free block contains no nodes.


The garbage collector runs in the background, turning dirty blocks into free blocks. It does this by copying valid nodes to a new block and skipping obsolete ones. That done, it erases the dirty block and tags it with a special marker designating it as a free block (to prevent confusion if power is lost during an erase operation). In computer science, garbage collection (also known as GC) is a form of automatic memory management. ...


To make wear-levelling more even and prevent erasures from being too concentrated on mostly-static file systems, the garbage collector will occasionally also consume clean blocks. Wear levelling (also written -levelling) is a technique for prolonging the service life of some kinds of eraseable computer storage media, e. ...


Disadvantages

  • All nodes must still be scanned at mount time. This is slow and is becoming an increasingly serious problem as flash devices scale upward into the gigabyte range.
  • Writing many small blocks of data can even lead to negative compression rates, so it is essential for applications to use large write buffers.
  • There is no practical way to tell how much usable free space is left on a device since this depends both on how well additional data can be compressed, and the writing sequence.

Mounting, in computer science, is the process of making a file system ready for use by the operating system, typically by reading certain index data structures from storage into memory ahead of time. ... A gigabyte (derived from the SI prefix giga-) is a unit of information or computer storage equal to one billion (short scale) bytes or 230 bytes (1024 mebibytes)[1]. It is commonly abbreviated GB (not to be confused with Gb, which is used for gigabits). ...

See also

The following lists identify, characterise and link to fuller information on computer file systems. ... The Journaled Flash File System (or JFFS) is a log-structured file system for use on NOR flash memory devices. ... This article needs to be cleaned up to conform to a higher standard of quality. ...

References

External links


  Results from FactBites:
 
Flash Filesystems for Embedded Linux Systems | Linux Journal (1642 words)
The jffs2 filesystem is currently in development but is extremely useful; it should be stable by publication of this article.
The jffs2 filesystem is new and in the process of being integrated into the kernel sources.
By using the jffs2 filesystem, the Accelent system software solution allows units to be powered off at any time, yet allows the user to write data to the filesystem that is preserved between reboots.
JFFS2 - Wikipedia, the free encyclopedia (397 words)
The Journalling Flash File System version 2 or JFFS2 is a log-structured file system for use in flash memory devices.
JFFS2 has been included in the Linux kernel since the 2.4.10 release.
Instead, JFFS2 deals in blocks, a unit the same size as the erase segment of the flash medium.
  More results at FactBites »

 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your location
Your comments
Please enter the 5-letter protection code


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.