Reiser4
From Wikipedia, the free encyclopedia
| Reiser4 | |
|---|---|
| Developer | Namesys |
| Full name | Reiser4 |
| Introduced | 2004 (Linux) |
| Partition identifier | Apple_UNIX_SVR2 (Apple Partition Map) 0x83 (MBR) |
| Structures | |
| Directory contents | Dancing B*-tree |
| File allocation | |
| Bad blocks | |
| Limits | |
| Max file size | 8 TiB on x86 |
| Max number of files | |
| Max filename size | 3976 bytes |
| Max volume size | |
| Allowed characters in filenames | All bytes except NUL and '/' |
| Features | |
| Dates recorded | modification (mtime), metadata change (ctime), access (atime) |
| Date range | 64-bit timestamps[1] |
| Date resolution | |
| Forks | Extended attributes |
| Attributes | |
| File system permissions | Unix permissions, ACLs and arbitrary security attributes |
| Transparent compression | Version 4.1 (beta) |
| Transparent encryption | Version 4.1 (beta) |
| Supported operating systems | Linux |
Reiser4 is a computer file system, a new "from scratch" successor to the ReiserFS file system, developed by Namesys and sponsored by DARPA as well as Linspire.
As of 2007, 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 much more widely adopted. Reiser4 is also available from Andrew Morton's -mm kernel sources. Linux kernel developers claim that Reiser4 breaks Linux coding standards,[2] but Hans Reiser suggests political reasons.[citation needed]
Contents |
[edit] Features
Some of the goals of the Reiser4 file system are:
- More efficient journaling through wandering logs
- More efficient support of small files, in terms of disk space and speed through tail packing
- Faster handling of directories with large numbers of files
- Flexible plugin infrastructure (through which special metadata types, encryption and compression will be supported)
- Dynamically optimized disk-layout through allocate-on-flush (also called delayed allocation in XFS)
- Transaction support
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; sooner if someone pays them to do so.[3]
[edit] Performance
Reiser4 uses B*-trees in conjunction with the dancing tree balancing approach, in which underpopulated nodes will not get 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 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.[4] Other benchmarks show results of Reiser4 being slower on many operations.[5]
[edit] References
- ^ Documentation/filesystems/reiser4.txt from a reiser4-patched kernel source, "By default file in reiser4 have 64 bit timestamps."
- ^ Linux: Why Reiser4 Is Not in the Kernel. Kerneltrap (September 19, 2005).
- ^ Reiser, Hans (2004-09-16). Re: Benchmark : ext3 vs reiser4 and effects of fragmentation.. Namesys, ReiserFS mailing list. Retrieved on 2006-10-13.
- ^ Hans Reiser (November 20, 2003). Benchmarks Of ReiserFS Version 4. Namesys. Retrieved on 2006-11-28.
- ^ Justin Piszcz (januari 2006). Benchmarking Filesystems Part II. Retrieved on 2006-04-23.
[edit] See also
[edit] External links
- Reiser4 homepage
- Introduction to Reiser4 on kuro5hin
- Getting started with Reiser4 from Namesys.com
- Programmer's Guide to Reiser4
- 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 on Linux.comde:Reiser4
es:Reiser4 fr:Reiser4 it:Reiser4 nl:Reiser 4 ja:Reiser4 pl:Reiser4 pt:Reiser4 fi:Reiser4 ru:Reiser4

