Reiser File System

Reiser File System
ReiserFS
Hersteller Namesys (Hans Reiser)
Vollständige Bezeichnung Reiser File System
Technische Umsetzung
Verzeichnisse B⁺-Baum (ReiserFS 1-3) B*-Baum (Reiser4)
Dateien Bitmap[1]
Maximalwerte
Größe einer Datei 231 − 1 Byte (Version 3.5)
260 Byte (1 EiB) (Version 3.6)
Anzahl aller Dateien 232 − 3
Länge des Dateinamens Blockgröße − 64 (bei einer Blockgröße von 4 KB ergeben sich 4032 Bytes)
Eigenschaften
Unterstützende Betriebssysteme Linux, BSD

ReiserFS ist ein Mehrzweck-Dateisystem, das von einer Entwicklergruppe um Hans Reiser in der ihm gehörenden Firma Namesys unter der GPL entwickelt und realisiert wurde. Die Entwicklung der Version 3 wurde von MP3.com und der SuSE Linux GmbH unterstützt, die Version 4 vor allem von der DARPA und Linspire.

ReiserFS war das erste Journaling-Dateisystem, das im Linux-Kernel standardmäßig (ab Kernel-Version 2.4.1) enthalten war. Es wird im Wesentlichen für Logical Volumes oder RAID-Systeme eingesetzt.

Zurzeit wird ReiserFS in der Version 3 vom Linux-Kernel vollständig unterstützt. Für FreeBSD gibt es eine experimentelle Unterstützung, bisher nur für Leseoperationen. Kommerzielle Treiber gibt es auch für die Betriebssysteme von Microsoft.

Inhaltsverzeichnis

ReiserFS, Versionen 1 und 2

Das ReiserFS basiert auf der von Rudolf Bayer entwickelten Datenstruktur des B+-Baums. Das gilt für die Versionen 1 bis 3.

ReiserFS, Version 3

In Version 3 wurde dem ReiserFS ein Journal hinzugefügt. Ursprünglich war ein Nachteil von ReiserFS gegenüber einigen anderen Journaling-Systemen, dass das Journaling nur für die Metainformationen, d. h. für die Verzeichnisse und Verwaltungssektoren, nicht jedoch für die Nutzdaten in den Dateien selbst angewendet wurde. Dies wurde im 2.6er Kernel behoben.

Reiser4

Reiser4 stellt eine vollständige Neuentwicklung dar und sollte nicht mit einer Weiterentwicklung des alten ReiserFS verwechselt werden. Daher wird es bewusst nicht als „ReiserFS 4“ vertrieben. Es wird eine Abwandlung der B*-Baum-Struktur verwendet, so genannte Dancing Trees. Der Hauptunterschied besteht darin, dass unzureichend gefüllte Knoten nicht bei jeder Modifikation des Baumes verschmolzen werden, sondern nur dann, wenn durch Speicherknappheit ein Zurückschreiben auf den Festspeicher gefordert wird oder eine Transaktion abgeschlossen wurde.

Einen Geschwindigkeitsvorteil bietet Reiser4 bei der Speicherung der Nutzdaten im Journal, da es mit einem wandernden Journal für diese arbeitet. Hier müssen die Daten nicht mehr zweimal auf die Festplatte geschrieben werden, zunächst in das Journal und anschließend in das Dateisystem, sie werden stattdessen direkt an die vorgesehene Stelle im Dateisystem geschrieben und das Journal bis zum Abschluss des Vorgangs darüber gelegt.

Des Weiteren wurde eine flexible Plugin-Struktur hinzugefügt, durch die besondere Metadaten-Typen, Verschlüsselung und Komprimierung realisiert werden können. Auf Reiser4 ergibt sich die Möglichkeit, Metadaten von Dateien, die beispielsweise Titel und Künstler einer Musikdatei beinhalten, im Dateisystem zu speichern, statt in Anwendungen. Der Unterschied zu beispielsweise ID3-Tags von MP3-Dateien und vergleichbaren Metadatensystemen besteht darin, dass hier ein Metadatensystem im Dateisystem und nicht im Containerformat der Datei integriert wird, das für alle Dateien einheitlich sein könnte. Falls dieser Ansatz jemals vollendet werden sollte, bräuchte man nicht mehr darauf zu achten, ob eine Anwendung alle Metadatentypen, mit denen sie in Berührung kommen könnte, versteht. Der Zugriff auf die Metadaten könnte transparent über die Funktionalität des Dateisystems erfolgen. Während das die Interkompatibilität von Anwendungen verbessern könnte, macht es die Interkompatibilität von Dateisystemen schwieriger, da die Metadaten nicht auf ein anderes Dateisystem, welches dieses Metadatensystem nicht hat, wie z. B. ext4, XFS oder NTFS, kopiert werden könnten.[1][2]

Grundlegende ReiserFS-Funktionen

Technische Spezifikationen
Version 3.5 Version 3.6
max. Anzahl Dateien pro Verzeichnis 518701895 (~229) 232 − 3
(limitiert durch eine Hash-Funktion,
die 1.200.000 Dateinamen ohne Kollisionen zulässt)
max. Anzahl der harten Links pro Datei 216 232
max. Dateisystemgröße 232 4k-Blöcke

Vorteile gegenüber anderen Dateisystemen bietet ReiserFS vor allem bei der Handhabung von vielen kleinen Dateien, da diese in den Verwaltungsknoten gespeichert werden können. Das bedeutet, dass die Dateien im Dateisystem weniger Platz belegen und der Platz auf der Festplatte effizienter genutzt werden kann. Diese Funktionen des Dateisystems lassen sich über die Parameter beim Mounten festlegen. Die bekanntesten Parameter sind:

notail Deaktiviert die Speicherung kleiner Dateien in den Inodes der Verzeichnisse, in denen sie sind. Dies ist eine der wesentlichen Eigenschaften, die ReiserFS für kleine Dateien empfehlenswert machen.
nolog Deaktiviert das Journaling, bietet damit einen kleinen Performance-Gewinn auf Kosten der Sicherheit. Auch mit dieser Option wird das Journaling dennoch ausgeführt, denn diese Funktion ist noch in Entwicklung.

Ferner gibt es von den Entwicklern mitgelieferte Programme zur Verwaltung und Administration des Filesystems, die reiserfsprogs:

mkreiserfs Mit diesem Programm wird auf einer Partition ein ReiserFS erzeugt. Zum Beispiel erzeugt folgender Befehl auf Partition /dev/hda1 ein ReiserFS:
mkreiserfs /dev/hda1
Beim Erzeugen können diesem Programm Parameter übergeben werden, um das Dateisystem zu optimieren. Die meisten können jedoch später jederzeit mit einigen der Programme verändert werden.
reiserfsck Mit diesem Programm kann die Dateizuordnungsstruktur des ReiserFS geprüft werden. Dank seiner Eigenschaft als Journaling-Dateisystem benötigt die Überprüfung des Dateisystems deutlich weniger Zeit als bei einem normalen Dateisystem.
resize_reiserfs Mit diesem Programm kann nachträglich ein bestehendes ReiserFS in der Größe variiert werden. Normalerweise nimmt ein Dateisystem stets die volle Größe der ihm zur Verfügung stehenden Partition ein. Doch nicht immer ist das gewünscht.
reiserfstune Mit diesem Programm können verschiedene Eigenschaften zusätzlich gesteuert werden, die spezielle Anwendungen optimieren helfen.
debugreiserfs Dieses Programm ist ein Analysetool für Debugging.

Quellen

  1. Why a New Filesystem Matters. In: Kuro5hin. 9. August 2003, abgerufen am 4. Oktober 2010 (englisch).
  2. 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, Abstrakt, Video — Vortrag von Hans Reiser an der Stanford University.

Siehe auch

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужна курсовая?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • File system fragmentation — In computing, file system fragmentation, sometimes called file system aging, is the inability of a file system to lay out related data sequentially (contiguously), an inherent phenomenon in storage backed file systems that allow in place… …   Wikipedia

  • JFS (file system) — infobox filesystem name = JFS full name = IBM Journaled File System developer = IBM et al. introduction os = JFS1 in AIX 3.1 and JFS in OS/2 4.5 introduction date = 1990 and 1999 partition id = 0x35 (MBR) file struct = Bitmap/extents bad blocks… …   Wikipedia

  • Reiser — bezeichnet: in der Botanik einen Zweig, siehe Reisig in Baumschulwesen und Weinbau einen Pfropfreiser zur Pflanzenveredlung, siehe Pfropfen (Pflanzen) in der Medizin eine besondere Form der Krampfadern, siehe Besenreiser in der Informatik das… …   Deutsch Wikipedia

  • Ignaz Reiser — Reiser bezeichnet: in der Botanik einen Zweig, siehe Reisig in der Medizin eine besondere Form der Krampfadern, siehe Besenreiser in der Informatik das Reiser File System Reiser ist der Familienname folgender Personen: Allen Reiser, kanadischer… …   Deutsch Wikipedia

  • Hans Reiser (Entwickler) — Hans Reiser Hans Thomas Reiser (* 19. Dezember 1963) ist ein amerikanischer Informatiker. Er ist hauptsächlich durch das nach ihm benannte Dateisystem ReiserFS bekannt geworden, das er mit seinen Mitarbeitern als Inhaber des Unternehmens Namesys… …   Deutsch Wikipedia

  • Hans Reiser — Hans Thomas Reiser Hans Reiser mug shot Born December 19, 1963 (1963 12 19) (age 47) California …   Wikipedia

  • Hans Reiser — Pour les articles homonymes, voir Reiser. Hans Reiser Hans Reiser, né le 19 décembre 1963, est un programmeur …   Wikipédia en Français

  • Nina reiser — Hans Reiser Hans Reiser Hans Reiser, né le 19 décembre 1963, est un programmeur américain spécialisé dans les systèmes d exploitation et les systèmes de fichiers. Depuis 1997, Hans Reiser est à la tête de Namesys, une entreprise à travers… …   Wikipédia en Français

  • ReiserFS — Infobox Filesystem name = ReiserFS full name = ReiserFS developer = Namesys introduction os = Linux 2.4.1 introduction date = 2001 OS = Linux partition id = Apple UNIX SVR2 (Apple Partition Map) 0x83 (MBR) EBD0A0A2 B9E5 4433 87C0 68B6B72699C7… …   Wikipedia

  • GParted — GNU Parted Entwickler: Das GNU Projekt Aktuelle Version: 1.8.8 (10. August 2007) Betriebssystem: Plattformübergreifend Lizenz: GPL …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”