Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Reiser4
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{short description|Computer file system, successor to ReiserFS}} {{Multiple issues| {{Lead too short|date=February 2010}} {{More citations needed|date=January 2017}} }} {{ infobox filesystem | name = Reiser4 | full_name = Reiser4 | developer = Edward Shishkin and others<ref>{{Cite web |url=https://reiser4.wiki.kernel.org/index.php/Credits |title=Credits - Reiser4 FS Wiki |website=reiser4.wiki.kernel.org |access-date=2019-08-05}}</ref> | introduction_os = [[Linux]] | OS = Linux | introduction_date = {{Start date and age|2004}} | partition_id = <code>Apple_UNIX_SVR2</code> ([[Apple Partition Map]])<br /> <code>0x83</code> ([[Master Boot Record|MBR]])<br /> <code>[[Basic data partition]]</code> ([[GUID Partition Table|GPT]]) | directory_struct = [[dancing tree|Dancing]] [[B*-tree]] | file_struct = | bad_blocks_struct = | max_filename_size = 3976 bytes | max_files_no = | max_volume_size = | max_file_size = 8 [[Tebibyte|TiB]] on x86 | filename_character_set = All bytes except NUL and '/' | dates_recorded = modification (mtime), metadata change (ctime), access (atime) | date_range = 64-bit timestamps<ref>Documentation/filesystems/reiser4.txt from a reiser4-patched kernel source, "By default file in reiser4 have 64-bit timestamps."</ref> | forks_streams = No | attributes = | file_system_permissions = Unix permissions | compression = Yes | encryption = No | single_instance_storage = No | website = [https://reiser4.wiki.kernel.org/ reiser4.wiki.kernel.org] | repo = [https://github.com/edward6/reiser4 github.com/edward6/reiser4] }} '''Reiser4''' is a [[computer]] [[file system]], successor to the [[ReiserFS]] file system, developed from scratch by [[Namesys]] and sponsored by [[Defense Advanced Research Projects Agency|DARPA]] as well as [[Linspire]]. Reiser4 was named after its former lead developer [[Hans Reiser]]. {{As of|2021}}, the Reiser4 patch set is still being maintained,<ref name="phLinux5patch">{{Cite web |url=https://www.phoronix.com/scan.php?page=news_item&px=Reiser4-Linux-5.0-Patch |title=Reiser4 Brought To The Linux 5.0 Kernel - Phoronix |last=Larabel |first=Michael |author-link=Michael Larabel |date=2019-04-13 |website=[[Phoronix]] |access-date=2019-08-04}}</ref><ref name=reiser4sourceforge/> but according to [[Phoronix]], it is unlikely to be merged into mainline Linux without corporate backing.<ref>{{Cite web|url=https://phoronix.com/scan.php?page=news_item&px=Linux-4.10-Ten-Missing-Features|title = Ten Features You Will Not Find in the Mainline Linux 4.10 Kernel - Phoronix}}</ref> == Features == Some of the goals of the Reiser4 file system are: * [[Atomicity (database systems)|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]]), hybrid transaction model<ref>{{cite web |url=http://reiser4.wiki.kernel.org/index.php/Reiser4_transaction_models |title=Reiser4 transaction models|work=Reiser4 wiki }}</ref> * More efficient [[journaling file system|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 [[directory (file systems)|directories]] with large numbers of files * Transparent compression: [[Lempel-Ziv-Oberhumer]] (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 * [[Database transaction|Transactions]] support for user-defined integrity * [[Metadata]] and inline-data [[checksums]]<ref>{{cite web |url=http://reiser4.wiki.kernel.org/index.php/Reiser4_checksums |title=Reiser4 checksums |work=Reiser4 wiki }}</ref> * Mirrors and failover<ref>{{cite web |url=http://reiser4.wiki.kernel.org/index.php/Reiser4_Mirrors_and_Failover |title=Reiser4 Mirrors and Failover |work=Reiser4 wiki }}</ref> * Precise [[discard (solid-state drive)|discard]] support<ref>{{cite web |url=http://reiser4.wiki.kernel.org/index.php/PreciseDiscard |title=Precise Discard |work=Reiser4 wiki }}</ref> with delayed issuing of discard requests for SSD devices<ref>{{cite web |url=https://reiser4.wiki.kernel.org/index.php/Reiser4_discard_support |title=Reiser4 discard support |work=Reiser4 wiki }}</ref> Some of the more advanced Reiser4 features (such as user-defined transactions) are also not available because of a lack of a [[Virtual file system|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.<ref name=reiser4-repacker>{{cite web| first=Hans| last=Reiser| publisher=Namesys, ReiserFS mailing list |title=Re: Benchmark: ext3 vs reiser4 and effects of fragmentation.| date=2004-09-16 |url=http://marc.info/?l=reiserfs-devel&m=109535506122706&w=2 |access-date=2009-10-03}}</ref> == Performance == Reiser4 uses [[B*-tree]]s 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.<ref>{{cite web|url=http://www.namesys.com/ |title=Benchmarks Of ReiserFS Version 4 |author=Hans Reiser |date=November 20, 2003 |publisher=Namesys |access-date=2014-01-18 |url-status=dead |archive-url=https://web.archive.org/web/20070929195459/http://www.namesys.com/ |archive-date=September 29, 2007 }}</ref> Other benchmarks from 2006 show results of Reiser4 being slower on many operations.<ref>{{cite web|url = http://linuxgazette.net/122/TWDT.html#piszcz|title = Benchmarking Filesystems Part II|author = Justin Piszcz|date=January 2006|access-date = 2006-04-23 }}</ref> 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]].<ref>{{cite web | url= https://www.phoronix.com/scan.php?page=article&item=linux_310_reiser4 | title=Reiser4 File-System Shows Decent Performance On Linux 3.10| author=Michael Larabel | date=July 31, 2013 | publisher=Phoronix | access-date=2013-07-31}}</ref> ==Integration with Linux== Reiser4 has patches for Linux 2.6, 3.x, 4.x and 5.x.,<ref>{{Cite web |url=https://sourceforge.net/projects/reiser4/files/ |title=Reiser4 file system for Linux OS - Browse Files at SourceForge.net |website=sourceforge.net |access-date=2019-08-04}}</ref><ref name="phLinux5patch" /> but {{as of|lc=y|2019}}, Reiser4 has not been merged into the mainline [[Linux kernel]]<ref name="phLinux5patch" /> and consequently is still not supported on many [[Linux distribution]]s; however, its predecessor ReiserFS v3 has been widely adopted. Reiser4 is also available from [[Andrew Morton (computer programmer)|Andrew Morton]]'s [[Mm tree|-mm]] kernel sources, and from the Zen patch set. The Linux kernel developers claim that Reiser4 does not follow the Linux "coding style" by the decision to use its own plugin system,<ref>{{cite web | url=http://kerneltrap.org/node/6844 | archive-url=https://web.archive.org/web/20070423030227/http://kerneltrap.org/node/6844 | archive-date=2007-04-23 | title=Linux: Why Reiser4 Is Not in the Kernel | date=September 19, 2005 | publisher=Kerneltrap }}</ref> but [[Hans Reiser]] suggested the decision was made for political reasons.<ref>{{cite web | url=https://lkml.org/lkml/2006/7/21/109 | title=The "'official' point of view" expressed by kernelnewbies.org regarding reiser4 inclusion | first=Hans | last=Reiser | author-link=Hans Reiser | date=21 July 2006 | access-date=2008-03-01}}</ref> The latest released Reiser4 kernel patches and tools can be downloaded from Reiser4 project page at sourceforge.net.<ref name=reiser4sourceforge>[http://reiser4.sourceforge.net/ http://reiser4.sourceforge.net/]</ref> == History of Reiser4 == {{See also|Hans Reiser}} 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;<ref>{{cite web |url=https://www.wired.com/news/technology/0,72342-0.html?tw=wn_technology_1 |title=Murder Suspect Selling Namesys |publisher=[[Wired News]] |date=2006-12-21 |access-date=2006-12-30 }}</ref> 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,<ref>Namesys vanishes, but ReiserFS project lives on. http://www.news.com/8301-13580_3-9851703-39.html {{Webarchive|url=https://web.archive.org/web/20080905032318/http://www.news.com/8301-13580_3-9851703-39.html |date=2008-09-05 }} CNet (January 16, 2008). Retrieved on 2008-01-26.</ref> making source code available from Shishkin's web site,<ref>{{cite web |url=http://chichkin_i.zelnet.ru/namesys/ |title=Namesys things |publisher=Chichkin_i.zelnet.ru |access-date=2010-02-08 |url-status=dead |archive-url=https://web.archive.org/web/20100324124748/http://chichkin_i.zelnet.ru/namesys/ |archive-date=2010-03-24 }}</ref> later relocated to [[kernel.org]].<ref>New location of Namesys software [https://lkml.org/lkml/2008/4/18/390 Linux Kernel Mailing List post, 2008-08-04]</ref> Since 2008, Namesys employees have received 100% of their sponsored funding from [[DARPA]].<ref>{{cite web|url=http://www.mail-archive.com/reiserfs-list%40namesys.com/msg11961.html |title=Re: we got the DARPA grant to add views to Reiser4 |publisher=Mail-archive.com |date=2004-04-10 |access-date=2010-02-08}}</ref><ref>{{cite web |url=https://bugzilla.redhat.com/show_bug.cgi?id=114785 |title=Bug 114785 β reiserfs won't mount with usrquota option |work=Red Hat Bugzilla }}</ref><ref>{{cite web|url=http://www.linuxplanet.com/linuxplanet/reports/3726/1/ |title=Reports - ext3 or ReiserFS? Hans Reiser Says Red Hat's Move Is Understandable - Red Hat's Decision is Conservative, Not Radical |publisher=LinuxPlanet |access-date=2010-02-08}}</ref> In 2010, [[Phoronix]] wrote that Edward Shishkin was exploring options to get Reiser4 merged into Linux kernel mainline.<ref>{{cite web|url=https://www.phoronix.com/scan.php?page=news_item&px=NzY4OQ |title=Reiser4 May Go For Mainline Inclusion In 2010 |publisher=[[Phoronix]] |date=2009-11-10 |access-date= 2010-02-08}}</ref> {{As of|2019}}, the file system is still being updated for new kernel releases, but has not been submitted for merging.<ref name="phLinux5patch" /> In 2015, [[Michael Larabel]] mentioned it is unlikely to happen without corporate backing,<ref name=not-in-linux-4.0>{{cite web |url=https://www.phoronix.com/scan.php?page=news_item&px=Linux-4.0-Missing-Features |author=Michael Larabel |date=23 February 2015 |title=KDBUS & Other Features You Won't Find In The Linux 4.0 Kernel |work=[[Phoronix]] }}</ref> 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.<ref name="phLinux5patch" /> Shishkin announced a [[Reiser5]] filesystem on December 31, 2019.<ref>{{cite web|url=https://lwn.net/ml/linux-kernel/ee55ce28-2434-d3c6-0d2d-2ed1ea8f35d7%40gmail.com/|title=[ANNOUNCE] Reiser5 (Format Release 5.X.Y)|date=2019-12-31|publisher=Linux Weekly News}}</ref> == See also == * [[List of file systems]] * [[Comparison of file systems]] == References == {{Reflist}} ==External links== *[https://reiser4.wiki.kernel.org ReiserFS and Reiser4 wiki] *[http://sourceforge.net/projects/reiser4/files/ Current Reiserfs4 patches] as [[Namesys]]' website is down *[http://reiser4.wiki.kernel.org/index.php/Reiser4progs Reiserfs v4 utilities] *[http://www.kuro5hin.org/story/2003/8/9/172159/7912 Introduction to Reiser4] on [[kuro5hin]] *[https://lwn.net/2001/1108/a/reiser4-transaction.php3 Reiser4 transaction design document] *[http://www.linuxjournal.com/article/6267 Trees in the Reiser4 Filesystem, Part I] from [[Linux Journal]] *[http://www.linuxjournal.com/article/6569 Trees in the Reiser4 Filesystem, Part II] from [[Linux Journal]] *[https://www.youtube.com/watch?v=HytWhfo7-zI Hans Reiser: The Reiser4 Filesystem] [[Hans Reiser]]'s lecture at [[Google]] *[http://wiki.kernelnewbies.org/WhyReiser4IsNotIn Why Reiser4 is not in the Linux Kernel] at kernelnewbies.org and [http://www.gossamer-threads.com/lists/engine?do=post_view_flat;post=668645;page=1;sb=post_latest_reply;so=ASC;mh=25;list=linux Hans Reiser's response to Kernelnewbies' criticism] *[http://www.linux.com/articles/56093 Reiser4 and the Politics of the Kernel] by Bruce Byfield on Linux.com *[http://www.stanford.edu/class/ee380/Abstracts/051026.html 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]] ([https://web.archive.org/web/20100813121519/http://stanford-online.stanford.edu/courses/ee380/051026-ee380-100.asx video archive]). *[https://forums.gentoo.org/viewtopic-t-706171.html Reiser4 Gentoo FAQ] *[https://sourceforge.net/projects/metztli-reiser4/ Metztli Reiser4] β a Debian installer including Reiser4 {{File systems}} [[Category:2004 software]] [[Category:Compression file systems]] [[Category:Disk file systems]] [[Category:File systems supported by the Linux kernel]] [[Category:Userspace file systems]] [[de:Reiser File System#Reiser4]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:As of
(
edit
)
Template:Cite web
(
edit
)
Template:File systems
(
edit
)
Template:Infobox filesystem
(
edit
)
Template:Multiple issues
(
edit
)
Template:Reflist
(
edit
)
Template:See also
(
edit
)
Template:Short description
(
edit
)
Template:Webarchive
(
edit
)