ALS 2000 Abstract
JFS Log: How the Journaled File System Performs Logging
Steve Best, IBM Linux Technology Center
Abstract
This paper describes the logging done by the Journaled File System (JFS). By logging, JFS can restore the file system to a consistent state
in a matter of seconds, versus minutes or hours with non-journaled file systems. This white paper gives an overview of the changes to
meta-data structures that JFS logs.
The Journaled File System (JFS) provides a log-based, byte-level file system that was developed for transaction-oriented, high performance
systems. Scaleable and robust, one of the key features of the file system is logging. JFS, a recoverable file system, ensures that if the system
fails during power outage, or system crash, no file system transactions will be left in an inconsistent state. The on-disk layout of JFS will
remain consistent without the need to run fsck. JFS provides the extra level of stability with a small decrease in performance when meta-data
changes need to be logged.
JFS uses a transaction-based logging technique to implement recoverability. This design ensures a full partition recovery within seconds for
even large partition sizes. JFS limits its recovery process to the file system structures to ensure that at the very least the user will never lose
a partition because of a corrupted file system. Note, that user data is not guaranteed to be fully updated if a system crash has occurred. JFS is
not designed to log user data and therefore is able to keep all file operations to an optimal level of performance.
A general architecture and design overview of JFS is presented in [JFSOverview].
The development of a recoverable file system can be viewed as the next step in file system technology.
- View the full text of this paper in
HTML form, and
PDF form.
- If you need the latest Adobe Acrobat Reader, you can download it from Adobe's site.
- To become a USENIX Member, please see our Membership Information.
|