Login
Newsletter
Werbung

Do, 30. Juni 2011, 12:29

Software::Systemverwaltung

Torvalds: Userspace-Dateisysteme sind Spielzeuge

In einer Diskussion um die Aufnahme eines neuen Dateisystemtreibers in den Kernel bezog der Linux-Erfinder Linus Torvalds Stellung und bezeichnete die im Userspace arbeitende Dateisysteme als Spielzeuge, die zwar funktionieren, aber nie eine zufriedenstellende Geschwindigkeit erreichen werden.

Fuse (Filesystem in Userspace) stellt eine Erweiterung für den Kernel dar, die es ermöglicht, Dateisystemtreiber vom Kernel in Anwenderprozesse (Userland) zu verlagern. Aufgrund der Vereinfachung durch den User-Modus sind in deshalb der Vergangenheit eine Vielzahl von Treibern entstanden. Bindungen für zahlreiche Programmiersprachen ermöglichen einen relativ einfachen Zugriff auf die Funktionalität von Fuse. Der Treiber ist ein fester Bestandteil des Linux-Kernels seit Version 2.6.16 und steht auch für diverse Systeme außerhalb der Linux-Welt zur Verfügung.

Laut Aussage von Linux Torvalds funktioniert die Erweiterung allerdings eher zufriedenstellend als gut. Mit der Aussage, dass Leute, die denken, dass Userspace Dateisysteme eine Lösung für irgend etwas anderes als Spielzeuge sind, hat Torvalds die grundsätzliche Marschrichtung mancher Kernel-Entwickler in Frage gestellt. Denn bereits seit geraumer Zeit propagieren verschiedene Entwickler die Lösung, dass neue Dateisysteme nicht mehr im Kernel, sondern als Userland-Applikation erstellt werden sollen.

Wie Torvalds nun schreibt, funktionieren Fuse und damit auch Dateisysteme im Userland nur dann gut, wenn sie langsame Medien ansprechen müssen. Sofern es aber auf Geschwindigkeit ankommt, wie es beispielsweise bei einem Root-Dateisystem der Fall ist, sind sie komplett ungeeignet.

Grund für die Diskussion stellt die Bitte von Miklos Szeredi, den Treiber für OverlayFS in die kommende Kernel-Version aufzunehmen. Von Andrew Morton darauf angesprochen, warum der Treiber nicht im Userspace realisiert wurde, antwortete Szeredi, dass eine solche Implementierung außerhalb des Kernels nie so effizient sein könne wie im Kernel. Morton wollte daraufhin das Argument gelten lassen, wenn sich die Behauptung auch belegen lasse.

Widerspruch erntete Torvalds umgehend von Greg Kroah-Hartman, der als Gegenbeweis Tuxeras NTFS-Fuse-Treiber anführt. Laut Kroah-Hartman ist der Fuse-Treiber (fast) genauso schnell wie der Kernel-Treiber. Dem widersprach allerdings Tuxera. Laut Aussage von Anton Altaparmakov sei der Kernel-Treiber erheblich schneller als der FUSE-Treiber. Dieselbe Behauptung stellt Tuxera auch auf der eigenen Seite auf. Der Entwickler ließ sich gar zu der Aussage hinreißen, dass der Treiber allen anderen getesteten Dateisystemen den Rang in Sachen Geschwindigkeit abläuft.

Wer in der Diskussion Recht hat, ist nicht wirklich zu klären. Der Vergleich von zwei verschiedenen Produkten könnte zwar einen groben Anhaltspunkt über die Geschwindigkeit geben, ist aber in der Praxis wenig praktikabel. Denn neue, unabhängige Benchmarks gibt es offenbar nicht. Zudem scheint es auch teils zu gravierenden Geschwindigkeitsunterschieden zwischen den zwei unter Linux verfügbaren NTFS-Treibern und dem Original unter Windows zu geben. Erschwerend kommt noch hinzu, dass auch laut Aussagen der Entwickler die meisten Userspace-Dateisysteme wirklich Spielzeuge sind und nicht wirklich Wert auf Geschwindigkeit legen.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung