Die Neuerungen von Linux 3.8

Verbesserte Grafiktreiber und ein neues Dateisystem für Flash-Datenträger gehören zu den wichtigsten Neuerungen von Linux 3.8. Die Kernel-Entwickler haben zudem Btrfs und Ext4 optimiert und eine Reihe neuer Treiber integriert.

In Pocket speichern vorlesen Druckansicht 42 Kommentare lesen
Lesezeit: 10 Min.
Von
  • Thorsten Leemhuis
Inhaltsverzeichnis

"Einradfahrender Gorilla" (Unicycling Gorilla) – so lautet der Codename der Linux-Version 3.8, die Linus Torvalds nach zehn Wochen Entwicklung freigegeben hat. Der Name ist wieder mal aus einem Erlebnis von Torvalds entstanden und hat lediglich anekdotischen Wert. Von den zahlreichen Verbesserungen, die die neueste Kernel-Version bringt, werden aber viele Linux-Anwender profitieren.

Mehr Infos

Im Detail

Bereits in den vergangenen Wochen hat das Kernel-Log in der Serie "Was 3.8 bringt" detailliert über die Neuerungen von Linux 3.8 berichtet:

  1. Dateisysteme und Storage
  2. Infrastruktur
  3. Treiber

Der nebenstehende Text fasst die wichtigsten Neuerungen dieser Artikel zusammen und gibt einen Ausblick auf Linux 3.9.

Der Kernel-Treiber Nouveau enthält nun alles, damit der OpenGL-Treiber Nouveau aktueller Mesa-3D-Versionen ohne weitere Konfiguration die 3D-Beschleunigung aller Grafikchips der GeForce-Serie nutzen kann. So weit hatten es die Nouveau-Entwickler, die die zur Treiberprogrammierung nötigen Informationen per Reverse Engineering gewinnen, bisher noch nie geschafft; zuletzt fehlte die standardmäßige 3D-Unterstützung noch bei einigen der neueren Fermi-GPUs und den seit März 2012 verkauften Grafikchips der Kepler-Generation (1, 2, 3). Für viele PCs wird Nvidias proprietärer Grafiktreiber aber weiterhin die bessere Wahl bleiben, da Nouveau die schnelleren Betriebsmodi vieler neuerer GeForce-Chips nicht aktivieren kann und daher nur dürftige 3D-Performance liefert. Es hapert auch noch an anderen Stellen; etwa bei der Video-Beschleunigung oder der Unterstützung für die Lüfterregelung.

Der Grafiktreiber i915 unterstützt nun standardmäßig die Grafikkerne von Haswell-Prozessoren, die Intel in einigen Monaten als Core i-4000 einführen will; passende 3D-Treiber soll die derzeit vorbereitete Mesa-3D-Version 9.1 enthalten.

Linux 3.8 unterstützt das im Oktober von Samsung-Entwicklern präsentierte Dateisystem F2fs (Flash-Friendly File System). Es ist für den Einsatz auf Flash-Datenträgern ausgelegt, die einen primitiveren Flash Translation Layer (FTL) verwenden als SSDs für Desktop-PCs oder Server – dazu gehören USB-Sticks, Speicherkarten sowie die integrierten Speichermedien in Kameras, Tablets und Smartphones.

F2fs ist ein Log-structured File System (LFS) und füllt Datenträger von vorn nach hinten; erst wenn es dort angekommen ist, beginnt es wieder vorn und nutzt dann die zwischenzeitlich freigewordenen Bereiche. Beim sequenziellen Befüllen verwendet F2fs ähnlich wie Btrfs Copy-on-Write (COW), was eine gewisse Robustheit mit sich bringt. Anders als Btrfs oder Ext4 versucht Fs2fs nicht, das Fragmentieren von Daten zu vermeiden; durch die sehr kurzen Zugriffszeiten ist Fragmentierung bei Flash-Datenträgern kein Nachteil. Die Userspace-Werkzeuge zum Formatieren eines F2fs-Laufwerks liefert kernel.org.

Das weiterhin experimentelle Btrfs erhielt eine Replace-Funktion, die Daten schneller als zuvor von einem Laufwerk auf ein anderes transferiert – etwa beim Datenträgeraustausch im laufenden Betrieb (u. a. 1, 2). Unter den weiteren Änderungen an Btrfs sind einige, die Latenzen und CPU-Belastung beim Fsync und Schreiben per O_DIRECT senken sollen; durch andere Patches soll Btrfs die Arbeit besser auf mehr CPU-Kerne verteilen können, was die Performance steigern soll (u. a. 1, 2).

Durch den neuen Inline Data Support kann Ext4 wenige Byte kleine Dateien nun zusammen mit dem Inode-Eintrag speichern, was Speicherplatz spart und den Zugriff beschleunigt (1, 2). Ext4 unterstützt nun auch die bei Linux 3.1 eingeführten Lseek-Optionen SEEK_DATA und SEEK_HOLE, durch die beispielsweise Backup- oder Kopierprogramme leere Bereiche von Sparse-Dateien erkennen können, um diese bei ihrer Arbeit auszusparen.Auch Tmpfs implementiert diese Lseek-Parameter nun.