List of log-structured file systems
List of log-structured file system implementations.
- James T, Brady while in IBM Poughkeepsie Lab conceived a log structured paging file system in 1979 which was implemented in MVS SP2 in 1980.
- John K. Ousterhout and Mendel Rosenblum implemented the first log-structured file system for the Sprite operating system in 1992.
- BSD-LFS, an implementation by Margo Seltzer was added to 4.4BSD, and was later ported to 386BSD. It lacked support for snapshots. It was removed from FreeBSD and OpenBSD, but still lives on in NetBSD.
- Plan 9's Fossil file system is also log-structured and supports snapshots.
- NILFS is a log-structured file system implementation for Linux by NTT/Verio which supports snapshots.
- LinLogFS (formerly dtfs) and LFS are log-structured file system implementations for Linux. The latter was part of Google Summer of Code 2005. Both projects have been abandoned.
- LFS is another log-structured file system for Linux developed by Charles University, Prague. It was to include support for snapshots and indexed directories, but development has since ceased.
- Write Anywhere File Layout (WAFL) by NetApp is a file layout that supports large, high-performance RAID arrays, quick restarts without lengthy consistency checks in the event of a crash or power failure, and growing the filesystems size quickly. Built using log-structured file system concept, snapshots and off-line data deduplication.
- LSFS is a log-structured file system with writable snapshots and inline data deduplication created by StarWind Software.
- Cache Accelerated Sequential Layout (CASL) is a proprietary log-structured filesystem developed by Nimble Storage that uses Solid State Devices to cache traditional hard drives.
- ObjectiveFS is a log-structured FUSE filesystem that uses cloud object stores (e.g. Amazon S3, Google Cloud Storage and private cloud object store).
- NOVA for byte-addressable persistent memory (for example non-volatile dual in-line memory module (NVDIMM) and 3D XPoint) for Linux developed at the University of California, San Diego, US.
Some kinds of storage media, such as flash memory and CD-RW, slowly degrade as they are written to and have a limited number of erase/write cycles at any one location. Log-structured file systems are sometimes used on these media because they make fewer in-place writes and thus prolong the life of the device by wear leveling. The more common such file systems include:
- UDF is a file system commonly used on optical discs.
- JFFS and its successor JFFS2 are simple Linux file systems intended for raw flash-based devices.
- UBIFS is a filesystem for raw NAND flash media and also intended to replace JFFS2.
- LogFS is a scalable flash filesystem for Linux that works on both raw flash media and block devices, intended to replace JFFS2.
- YAFFS is a raw NAND flash-specific file system for many operating systems (including Linux).
- F2FS is a new file system designed for the NAND flash memory-based storage devices on Linux.
- Samson, Stephen L. MVS Performance Management OS/390 Edition. p. 12. CiteSeerx: 10.1.1.195.1886.
- ”Outstanding Innovation Award “Virtual Storage Disk Paging”
- Rosenblum, Mendel and Ousterhout, John K. (June 1990) - "The LFS Storage Manager". Proceedings of the 1990 Summer Usenix. pp315-324.
- Rosenblum, Mendel and Ousterhout, John K. (February 1992) - "The Design and Implementation of a Log-Structured File System". ACM Transactions on Computer Systems, Vol. 10 Issue 1. pp26-52.
- Toigo, Jon William (5 March 2015). "The struggle between virtual machine performance and storage". TechTarget SearchStorage.
- Shanks, Eric (November 25, 2013). "CASL with Nimble Storage". The IT Hollow.
- "The NOVA filesystem [LWN.net]". LWN.net.