Reiser4 is a
computer file system
In computing, file system or filesystem (often abbreviated to fs) is a method and data structure that the operating system uses to control how data is stored and retrieved. Without a file system, data placed in a storage medium would be one lar ...
, successor to the
ReiserFS
ReiserFS is a general-purpose, journaling file system initially designed and implemented by a team at Namesys led by Hans Reiser and licensed under GPLv2. Introduced in version 2.4.1 of the Linux kernel, it was the first journaling file syst ...
file system, developed from scratch by
Namesys and sponsored by
DARPA
The Defense Advanced Research Projects Agency (DARPA) is a research and development agency of the United States Department of Defense responsible for the development of emerging technologies for use by the military.
Originally known as the Ad ...
as well as
Linspire
Linspire (formerly Lindows) is a commercial operating system based on Debian and Ubuntu and currently owned by PC/OpenSystems LLC. It had been owned by Linspire. Inc. from 2001 to 2008, and then by Xandros from 2008 to 2017.
On July 1, 2008, Li ...
. Reiser4 was named after its former lead developer
Hans Reiser
Hans Reiser (born December 19, 1963) is an American computer programmer, entrepreneur, and convicted murderer. In April 2008, Reiser was convicted of the first-degree murder of his wife, Nina Reiser, who disappeared in September 2006. He subseq ...
. , the Reiser4 patch set is still being maintained,
[ but according to ]Phoronix
Phoronix Test Suite (PTS) is a free and open-source benchmark software for Linux and other operating systems which is developed by Michael Larabel and Matthew Tippett.
The Phoronix Test Suite has been endorsed by sites such as Linux.com, Lin ...
, it is unlikely to be merged into mainline Linux without corporate backing.
Features
Some of the goals of the Reiser4 file system are:
* Atomicity (filesystem operations either complete, or they do not, and they do not corrupt due to partially occurring)
* Different transaction models: journaling, write-anywhere (copy-on-write
Copy-on-write (COW), sometimes referred to as implicit sharing or shadowing, is a resource-management technique used in computer programming to efficiently implement a "duplicate" or "copy" operation on modifiable resources. If a resource is dupl ...
), hybrid transaction model
* More efficient journaling through wandering logs
* More efficient support of small files, in terms of disk space and speed through block suballocation
Block suballocation is a feature of some computer file systems which allows large blocks or allocation units to be used while making efficient use of empty space at the end of large files, space which would otherwise be lost for other use to inte ...
* Liquid items (or virtual keys) – a special format of records in the storage tree, which completely resolves the problem of internal fragmentation
In computer storage, fragmentation is a phenomenon in which storage space, main storage or secondary storage, is used inefficiently, reducing capacity or performance and often both. The exact consequences of fragmentation depend on the specific ...
* EOTTL (extents on the twig level) – fully balanced storage tree, meaning that all paths to objects are of equal length
* Faster handling of directories
Directory may refer to:
* Directory (computing), or folder, a file system structure in which to store computer files
* Directory (OpenVMS command)
* Directory service, a software application for organizing information about a computer network's ...
with large numbers of files
* Transparent compression: Lempel-Ziv-Oberhumer (LZO), zlib
zlib ( or "zeta-lib", ) is a software library used for data compression. zlib was written by Jean-loup Gailly and Mark Adler and is an abstraction of the DEFLATE compression algorithm used in their gzip file compression program. zlib is also a ...
* Plugin infrastructure
* Dynamically optimized disk-layout through allocate-on-flush Allocate-on-flush (also called delayed allocation) is a file system feature implemented in HFS+, XFS, Reiser4, ZFS, Btrfs, and ext4. The feature also closely resembles an older technique that Berkeley's UFS called "block reallocation".
When block ...
(also called delayed allocation in XFS
XFS is a high-performance 64-bit journaling file system created by Silicon Graphics, Inc (SGI) in 1993. It was the default file system in SGI's IRIX operating system starting with its version 5.3. XFS was ported to the Linux kernel in 2001; as ...
)
* 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
* Metadata and inline-data checksums
A checksum is a small-sized block of data derived from another block of digital data for the purpose of detecting errors that may have been introduced during its transmission or storage. By themselves, checksums are often used to verify data ...
* Mirrors and failover
* Precise discard support with delayed issuing of discard requests for SSD devices
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
In the maintenance of file systems, defragmentation is a process that reduces the degree of fragmentation. It does this by physically organizing the contents of the mass storage device used to store files into the smallest number of contigu ...
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.
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.
, synthetic benchmarks performed by Namesys in 2003 show that Reiser4 is 10 to 15 times faster than its most serious competitor ext3
ext3, or third extended filesystem, is a journaled file system that is commonly used by the Linux kernel. It used to be the default file system for many popular Linux distributions. Stephen Tweedie first revealed that he was working on exten ...
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. Other benchmarks from 2006 show results of Reiser4 being slower on many operations. 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
ext4 (fourth extended filesystem) is a journaling file system for Linux, developed as the successor to ext3.
ext4 was initially a series of backward-compatible extensions to ext3, many of them originally developed by Cluster File Systems fo ...
, btrfs
Btrfs (pronounced as "better F S", "butter F S", "b-tree F S", or simply by spelling it out) is a computer storage format that combines a file system based on the copy-on-write (COW) principle with a logical volume manager (not to be confused ...
and XFS
XFS is a high-performance 64-bit journaling file system created by Silicon Graphics, Inc (SGI) in 1993. It was the default file system in SGI's IRIX operating system starting with its version 5.3. XFS was ported to the Linux kernel in 2001; as ...
.
Integration with Linux
Reiser4 has patches for Linux 2.6, 3.x, 4.x and 5.x., but , Reiser4 has not been merged into the mainline Linux kernel
The Linux kernel is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU ...
and consequently is still not supported on many Linux distribution
A Linux distribution (often abbreviated as distro) is an operating system made from a software collection that includes the Linux kernel and, often, a package management system. Linux users usually obtain their operating system by downloading on ...
s; 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, but Hans Reiser
Hans Reiser (born December 19, 1963) is an American computer programmer, entrepreneur, and convicted murderer. In April 2008, Reiser was convicted of the first-degree murder of his wife, Nina Reiser, who disappeared in September 2006. He subseq ...
suggested political reasons.
Latest released reiser4 kernel patches and tools can be downloaded from reiser4 project page at sourceforge.net [http://reiser4.sourceforge.net/]
/ref>
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 were 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; 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, "Commercial activity of Namesys has stopped." Shishkin and others continued the development of Reiser4, making source code available from Shishkin's web site, later relocated to kernel.org. Since 2008, Namesys employees have received 100% of their sponsored funding from DARPA
The Defense Advanced Research Projects Agency (DARPA) is a research and development agency of the United States Department of Defense responsible for the development of emerging technologies for use by the military.
Originally known as the Ad ...
.
In 2010, Phoronix
Phoronix Test Suite (PTS) is a free and open-source benchmark software for Linux and other operating systems which is developed by Michael Larabel and Matthew Tippett.
The Phoronix Test Suite has been endorsed by sites such as Linux.com, Lin ...
wrote that Edward Shishkin was exploring options to get Reiser4 merged into Linux kernel mainline. , the file system is still being updated for new kernel releases, but has not been submitted for merging. In 2015, Michael Larabel
Phoronix Test Suite (PTS) is a free and open-source benchmark software for Linux and other operating systems which is developed by Michael Larabel and Matthew Tippett.
The Phoronix Test Suite has been endorsed by sites such as Linux.com, Lin ...
mentioned it is unlikely to happen without corporate backing, and then he suggested in April 2019 that the main obstacle could be the renaming of Reiser4 to avoid reference to the initial author who was convicted of murder.
Shishkin announced a Reiser5 filesystem on December 31, 2019.
See also
* List of file systems
The following lists identify, characterize, and link to more thorough information on Computer file systems.
Many older operating systems support only their one "native" file system, which does not bear any name apart from the name of the operating ...
* Comparison of file systems
The following tables compare general and technical information for a number of file systems.
General information
Limits
Metadata
Features File capabilities
Block capabilities
Note that in addition to the below table, blo ...
References
External links
ReiserFS and Reiser4 wiki
Current Reiserfs4 patches
as Namesys' website is down
Reiserfs v4 utilities
Introduction to Reiser4
on kuro5hin
Kuro5hin (K5; read "corrosion") was a collaborative discussion website founded by Rusty Foster in 1999, having been inspired by Slashdot. Articles were created and submitted by users and submitted to a queue for evaluation. Site members could v ...
Reiser4 transaction design document
Trees in the Reiser4 Filesystem, Part I
from Linux Journal
''Linux Journal'' (''LJ'') is an American monthly technology magazine originally published by Specialized System Consultants, Inc. (SSC) in Seattle, Washington since 1994. In December 2006 the publisher changed to Belltown Media, Inc. in Housto ...
Trees in the Reiser4 Filesystem, Part II
from Linux Journal
''Linux Journal'' (''LJ'') is an American monthly technology magazine originally published by Specialized System Consultants, Inc. (SSC) in Seattle, Washington since 1994. In December 2006 the publisher changed to Belltown Media, Inc. in Housto ...
Hans Reiser: The Reiser4 Filesystem
Hans Reiser
Hans Reiser (born December 19, 1963) is an American computer programmer, entrepreneur, and convicted murderer. In April 2008, Reiser was convicted of the first-degree murder of his wife, Nina Reiser, who disappeared in September 2006. He subseq ...
's lecture at Google
Google LLC () is an American Multinational corporation, multinational technology company focusing on Search Engine, search engine technology, online advertising, cloud computing, software, computer software, quantum computing, e-commerce, ar ...
Why Reiser4 is not in the Linux Kernel
at kernelnewbies.org an
Hans Reiser's response to Kernelnewbies' criticism
Reiser4 and the Politics of the Kernel
by Bruce Byfield on Linux.com
- lecture given by Hans Reiser at Stanford University ( ttps://web.archive.org/web/20100813121519/http://stanford-online.stanford.edu/courses/ee380/051026-ee380-100.asx video archive.
Reiser4 Gentoo FAQ
Metztli Reiser4
– a Debian installer including Reiser4
{{File systems
2004 software
Compression file systems
Disk file systems
File systems supported by the Linux kernel
Userspace file systems
de:Reiser File System#Reiser4