Kernel-Log – Was 2.6.30 bringt (2): Neue und überarbeitete Dateisysteme

Seite 3: Exofs, Nilfs2, FS-Cache, Btrfs und Reiserfs

Inhaltsverzeichnis

Nach der Aufnahme von Btrfs und SquashFS bei Linux 2.6.29 haben die Kernel-Entwickler für 2.6.30 mit Nilfs2 und EXOFS abermals zwei neue Dateisysteme integriert.

Bei Nilfs2 (New Implementation of a Log-structured Filesystem Version 2) handelt es sich um ein Log-structured File System (LFS) mit Continuous Snapshotting, das speziell für die Belange von Solid State Discs (SSD) optimiert ist. Eine detaillierte Beschreibung der Arbeitsweise liefern die Nilfs2-Homepage und die Kernel-Dokumentation zu Nilfs2; weitere Details finden sich bei einer im Februar im Rahmen des "Linux Storage & Filesystem Workshop 2008" (LSF'08) gehaltenen Präsentation, die auch einen Vergleich Nilfs2 mit btrfs, ext[2-4], reiserfs und XFS beim Betrieb mit einer SSD enthält. Zudem geht der schon etwas ältere Vortrag von Dongjun Shin auf einige Besonderheiten von Dateisystemen für SSDs näher ein.

Exofs steht für Extended Object File System und hieß zuvor Osdfs (Object-Based Storage Devices File System). Wie der alte Name andeutet, ist es für die eher exotischen OSDs (Object-Based Storage Devices) gedacht, die das SCSI-Subsystem mit dem Kernel 2.6.30 erstmals unterstützen wird. Wer sich für diese Speichertechnik und das Dateisystem näher interessiert, findet Details in dem Artikel von Sun zu OSDs, dem OSD Protocol, der Kernel-Dokumentation zu EXOFS, der Homepage der EXOFS-Entwickler und einem LWN.net-Artikel zu EXOFS/OSDFS.

Mehr Infos

Kernel-Log – Was 2.6.30 bringt

Weitere Teile aus der Kernel-Log-Mini-Serie "Was 2.6.29 bringt":

1. Netzwerk – Neue Treiber für LAN und WLAN

Der Artikel "Stetes Wachstum – Die Neuerungen von Linux 2.6.29" bietet eine Übersicht über die Neuerungen der bei der Artikel-Veröffentlichung aktuellen Kernel-Version der Hauptentwicklungslinie.

Das bei der Freigabe dieses Artikels neueste reguläre Kernel-Log beschäftigt sich verschiedenen Entwicklungen rund um die Linux-Grafiktreiber für GPUs von AMD und Intel; wie immer finden auch zahlreiche weitere Geschehnisse rund um den Linux-Kernel und andere Hardware-nahe Linux-Software kurz Erwähnung. Weitere Kernel-Logs finden sich über die Übersichtsseite von heise open.

Nach mehren Jahren Entwicklung haben die Kernel-Entwickler auch die maßgeblich von Red-Hat-Entwickler David Howells entwickelten FS-Cache-Patches aufgenommen (Kernel-Dokumentation). Durch die Erweiterungen lässt sich ein Dateisystem-Cache einrichten, um den Datenverkehr beim Einsatz von Netzwerk-Dateisystemen wie AFS oder NFS zu reduzieren; das ist etwa bei Thin Clients mit kleinen Festplatten oder Flash-Medien interessant, die ihr Root-Dateisystem und alle anderen Daten übers Netz beziehen.

Auch die Btrfs-Entwickler waren fleißig und optimierten den Dateisystemcode, sodass dieses mit 4k-Stacks besser zurecht kommt; weitere Verbesserungen in dieser Richtung stehen noch auf der ToDo-Liste. Darüber hinaus gab es einige Optimierungen, die die Schreib-Performance allgemein sowie beim SSD-Betrieb steigern sollen.

Der ReiserFS-Code des Kernels gilt zwar noch als "supported", hat aber schon seit längerem keinen offiziellen Maintainer mehr, der den Code betreut – daher gab es am ihm in den vergangenen Monaten nur kleinere Änderungen, die sicherstellten, dass das früher populäre Dateisystem überhaupt weiter funktioniert.

Über Novell-Entwickler Jeff Mahoney fanden nun jedoch zahlreiche im Rahmen von SLED/SLES entwickelte und teilweise bereits über zwei Jahre alte Patches den Weg in den Hauptentwicklungszweig. Sie sollen Ungereimtheiten oder Fehler im auch Reiser3 genannten ReiserFS beseitigen. Beim Git-Pull-Request meinte Mahoney, dass sich ReiserFS nach Aufnahme dieser Patches im "tiefen Instandhaltungsmodus" (deep maintenance-only mode) befände. Im Rahmen der Diskussion um den Git-Pull-Requests ließ Frederic Weisbecker jedoch durchblicken, dass er an Änderungen arbeitet, die die Verwendung des Big Kernel Locks (BKL) in Reiserfs reduzieren sollen.