Reiser4
Developer | Namesys |
---|---|
Full name | Reiser4 |
Introduced | 2004 (Linux) |
Partition identifier |
Apple_UNIX_SVR2 (Apple Partition Map) |
Structures | |
Directory contents | Dancing B*-tree |
Limits | |
Max. file size | 8 TiB on x86 |
Max. filename length | 3976 bytes |
Allowed characters in filenames | All bytes except NULL and '/' |
Features | |
Dates recorded | modification (mtime), metadata change (ctime), access (atime) |
Date range | 64-bit timestamps[1] |
Forks | No |
File system permissions | Unix permissions |
Transparent compression | Yes |
Transparent encryption | No |
Data deduplication | No |
Other | |
Supported operating systems | Linux |
Reiser4 is a computer file system, successor to the ReiserFS file system, developed from scratch by Namesys and sponsored by DARPA as well as Linspire. Named after its former lead developer Hans Reiser, Reiser4 has a questionable future and no immediate plans for merging into the Linux kernel.
Features
Some of the goals of the Reiser4 file system are:
- Different transaction models: Journaling, Write-Anywhere (Copy-on-Write), Hybrid transaction model[2]
- More efficient journaling through wandering logs
- More efficient support of small files, in terms of disk space and speed through block suballocation
- Liquid items (or virtual keys) - a special format of records in the storage tree, which completely resolves the problem of internal fragmentation
- EOTTL (extents on the twig level) - fully balanced storage tree, meaning that all paths to objects are of equal length
- Faster handling of directories with large numbers of files
- Transparent compression (LZO, ZLIB)
- Plugin infrastructure
- Dynamically optimized disk-layout through allocate-on-flush (also called delayed allocation in XFS)
- Delayed actions (tree balancing, compression, block allocation, local defragmentation)
- R and D (Rare and Dense) caches, synchronized at commit time
- Transactions support for user-defined integrity
- Data checksums (currently only for files managed by cryptcompress plugin)
- Precise discard support [3] with delayed issuing of discard requests for SSD devices[4]
Some of the more advanced Reiser4 features (such as user-defined transactions) are also not available because of a lack of a VFS API for them.
At present Reiser4 lacks a few standard file system features, such as an online repacker (similar to the defragmentation utilities provided with other file systems). The creators of Reiser4 say they will implement these later, or sooner if someone pays them to do so.[5]
Performance
Reiser4 uses B*-trees in conjunction with the dancing tree balancing approach, in which underpopulated nodes will not be merged until a flush to disk except under memory pressure or when a transaction completes. Such a system also allows Reiser4 to create files and directories without having to waste time and space through fixed blocks.
As of 2004, synthetic benchmarks performed by Namesys in 2003 show that Reiser4 is 10 to 15 times faster than its most serious competitor ext3 working on files smaller than 1 KiB. Namesys's benchmarks suggest it is typically twice the performance of ext3 for general-purpose filesystem usage patterns.[6] Other benchmarks from 2006 show results of Reiser4 being slower on many operations.[7] Benchmarks conducted in 2013 with Linux Kernel version 3.10 show that Reiser4 is considerably faster in various tests compared to in-kernel filesystems EXT4, btrfs and XFS.[8]
Integration with Linux
On August 14, 2014, Phoronix.com reported that Reiser4 has been ported into the Linux 3.15 kernel, although the latest stable kernel is 3.16. [9] As of 2013, Reiser4 has not yet been merged into the mainline Linux kernel and consequently is still not supported on many Linux distributions; however, its predecessor ReiserFS v3 has been widely adopted. Reiser4 is also available from Andrew Morton's -mm kernel sources, and from Zen patch set. Linux kernel developers claim that Reiser4 does not follow Linux coding standards,[10] but Hans Reiser suggested political reasons.[11] Latest released reiser4 kernel patches and tools can be downloaded from reiser4 project page at sourceforge.net: http://reiser4.sourceforge.net/
History of Reiser4
Hans Reiser was convicted of murder on April 28, 2008, leaving the future of Reiser4 uncertain. After his arrest, employees of Namesys assured they would continue to work and that the events would not slow down the software development in the immediate future. In order to afford increasing legal fees, Hans Reiser announced on December 21, 2006 that he was going to sell Namesys;[12] as of March 26, 2008, it had not been sold, although the website was unavailable. In January 2008, Edward Shishkin, an employee of and programmer for Namesys, was quoted in a CNET interview saying that "Commercial activity of Namesys has stopped." Shishkin and others continued the development of Reiser4,[13] making source code available from Shishkin's web site,[14] later relocated to kernel.org.[15] Since 2008, Namesys employees have received 100% of their sponsored funding from DARPA.[16][17][18]
Future of Reiser4
Reiser4 development still continues,[19] delivering patches via kernel.org.[20]
In a mailing list post from July 2009, Edward Shishkin wrote that in the coming autumn, they would start exploring the opportunity of getting Reiser4 into the main Linux kernel.[21] In a November 2009 interview[22] with Phoronix he said he was going to publish a plug-in design document for independent expert review. He aimed for January 2011,[23] but as of 2013, and with the 3.0 branch of kernel in full development, Reiser4 has not yet been integrated into the mainline kernel.
See also
References
- ↑ Documentation/filesystems/reiser4.txt from a reiser4-patched kernel source, "By default file in reiser4 have 64-bit timestamps."
- ↑ http://reiser4.wiki.kernel.org/index.php/Reiser4_transaction_models
- ↑ http://reiser4.wiki.kernel.org/index.php/PreciseDiscard
- ↑ https://reiser4.wiki.kernel.org/index.php/Reiser4_discard_support
- ↑ Reiser, Hans (2004-09-16). "Re: Benchmark: ext3 vs reiser4 and effects of fragmentation.". Namesys, ReiserFS mailing list. Retrieved 2009-10-03.
- ↑ Hans Reiser (November 20, 2003). "Benchmarks Of ReiserFS Version 4". Namesys. Retrieved 2014-01-18.
- ↑ Justin Piszcz (January 2006). "Benchmarking Filesystems Part II". Retrieved 2006-04-23.
- ↑ Michael Larabel (July 31, 2013). "Reiser4 File-System Shows Decent Performance On Linux 3.10". Phoronix. Retrieved 2013-07-31.
- ↑ "Reiser4 Now Available For Linux 3.15". Larabel, Michael. http://www.phoronix.com/scan.php?page=news_item&px=MTc2MzE
- ↑ "Linux: Why Reiser4 Is Not in the Kernel". Kerneltrap. September 19, 2005. Archived from the original on 2007-04-23.
- ↑ Reiser, Hans (21 July 2006). "The "'official' point of view" expressed by kernelnewbies.org regarding reiser4 inclusion". Retrieved 2008-03-01.
- ↑ "Murder Suspect Selling Namesys". Wired News. 2006-12-21. Retrieved 2006-12-30.
- ↑ Namesys vanishes, but ReiserFS project lives on. http://www.news.com/8301-13580_3-9851703-39.html CNet (January 16, 2008). Retrieved on 2008-01-26.
- ↑ "Namesys things". Chichkin_i.zelnet.ru. Retrieved 2010-02-08.
- ↑ New location of Namesys software Linux Kernel Mailing List post, 2008-08-04
- ↑ "Re: we got the DARPA grant to add views to Reiser4". Mail-archive.com. 2004-04-10. Retrieved 2010-02-08.
- ↑ https://bugzilla.redhat.com/show_bug.cgi?id=114785
- ↑ "Reports - ext3 or ReiserFS? Hans Reiser Says Red Hat's Move Is Understandable - Red Hat's Decision is Conservative, Not Radical". LinuxPlanet. Retrieved 2010-02-08.
- ↑ ReiserFS Development Mailing List. Retrieved on 2009-04-11.
- ↑ "Edward Shishkin's Kernel Space". Kernel.org. Retrieved 2010-02-08.
- ↑ "Edward Shishkin on Reiser4's status". Spinics.net. 2009-07-31. Retrieved 2010-02-08.
- ↑ "Reiser4 May Go For Mainline Inclusion In 2010". Phoronix.com. 2009-11-10. Retrieved 2010-02-08.
- ↑ Shishkin, Edward (17 Oct 2010). "Re: Mainline inclusion". Retrieved 2010-10-17.
External links
- Current Reiserfs4 patches as Namesys' website is down
- Reiserfs v4 utilities and Reiserfs v3 utilities source code repository
- Compiling a new Kernel for Reiser4 (Archived June 23, 2008 at the Wayback Machine)
- Installing your Linux Distribution on Reiser4 (Archived June 25, 2008 at the Wayback Machine)
- Reiser4 homepage (Archived March 6, 2007 at the Wayback Machine) is now offline but try a cached version (without figures).
- Introduction to Reiser4 on kuro5hin
- Reiser4 transaction design document
- Trees in the Reiser4 Filesystem, Part I from Linux Journal
- Trees in the Reiser4 Filesystem, Part II from Linux Journal
- Hans Reiser: The Reiser4 Filesystem Hans Reiser's lecture at Google
- Why Reiser4 is not in the Linux Kernel at kernelnewbies.org and Hans Reiser's response to Kernelnewbies' criticism
- Reiser4 and the Politics of the Kernel by Bruce Byfield on Linux.com
- Reiser4 Wiki on kernel.org
- The Reiser4 Filesystem: Ways In Which Extra Rigor In Scientific Methodology Can Consume Years Of Your Life, And How The Result Can Be So Very Worthwhile - lecture given by Hans Reiser at Stanford University (video archive).
- Reiser4 Gentoo FAQ
|