Linux 3.3 und 3.4: März im Kernelrückblick

Anzeige:

Der Linux-Kernel, auf den alle Distributionen wie Ubuntu, Fedora und Red Hat Enterprise  aufsetzen, ist im März in der Version 3.4 erschienen. Mathias Menzer erklärt Verbesserungen aus Android, neue Funktionen der Dateisysteme BTRFS und EXT4 sowie Verbesserungen im Netzwerkbereich mit dem neuen Open vSwitch.

Klick zum Vergrössern: Karte des Linux-Kernels. (pd)

Insgesamt dauerte die Entwicklung von Linux 3.3 mit 75 Tagen etwas länger als die des Vorgängers. Der Entwicklungszyklus von Linux 3.3 lief aber ruhig aus. Sowohl Release Candidate 6 (RC) als auch RC 7 konnten wieder in einem 7-Tage-Rhythmus veröffentlicht werden. Eigentlich sollte es die siebte Entwicklerversion ja nicht mehr geben, da die sechste nur kleinere Korrekturen mitbrachte. Doch das Gesamtvolumen der Änderungen war gross genug, dass Torvalds noch keine Finalversion daraus machen wollte. Die Finalversion kam dann anstelle des RC 8 [3]. Sie war zwar noch kleiner als die beiden letzten Vorabversione, brachte aber neue interessante Funktionen mit: Sie änderte aber die Standardkonfiguration der ARM-basierten TILE-Architektur, unterstützt das An- und Abschalten von Funkschnittstellen für Fujitsus Amilo-Serie und erkennt den Betriebsmodus für Fujitsu Tablet-PCs. Die mobilen Computer des japansichen Herstellers werden somit energiesparender unter GNU/Linux-Betriebsystemen.

Anzeige:

Linux 3.3 kommt mit Android-Komponenten

Fast zwei Jahre nach dem Rausschmiss finden sich wieder Komponenten von Googles Mobil-Betriebssystem Android im Linux-Kernel wieder. Die ersten Patches wurden in Kroah-Hartmans Staging-Zweig aufgenommen und signalisieren damit die Annäherung der Entwicklerkreise um Linux- und Android-Kernel. Die bisher aufgenommenen Komponenten sind das Interprozess-Kommunikations-Tool von Android «Binder», das Logging-System «Logger» und das Werkzeug «Timed GPIO», das zeitverzögert auszuführende Ein-/Ausgabe-Kommandos ermöglicht.

Auch speicherspezifische Android-Erweiterungen wurden zurück portiert, darunter der «Low Memory Killer», um knappe Hardware-Ressourcen besser auszunutzen. Er wird in einer Umgebung benötigt, in der Anwendungen nicht vom Nutzer beendet werden, sondern vom Kernel, sobald der Arbeitsspeicher knapp wird.

Ebenfalls in die Systemtiefen geht die Unterstützung für EFI (Extensible Firmware Interface), das nach Einschalten eines Rechners für das Starten des Betriebssystemkerns oder eines Bootloaders genutzt wird. Linux kann nun direkt von EFI starten, ein Bootloader ist nicht mehr notwendig.

Dateisysteme BTRFS und EXT4 mit mehr Funktionen

Einer der Top-Kandidaten für funktionale Erweiterungen in den vergangenen Linux-Versionen war das Dateisystem BTRFS. Es kam während des Entwicklungszyklus von Linux 2.6.29 in den Kernel. Diesmal wurde eine Balance-Funktion verbessert, die bislang gleichbedeutend mit dem Neuschreiben des Dateisystems war. Dies kann notwendig sein, wenn einem RAID eine Platte hinzugefügt wird. Allerdings kann das lange Zeit dauern, die Überarbeitung ermöglicht nun das Pausieren der Operation und erlaubt zudem auch noch die Änderung des RAID-Levels. Entwickler kommen nun in den Genuss eines neuen Werkzeugs zur Fehlersuche bei BTRFS: «Integrity Check» soll bei Schreibvorgängen zusätzliche Integritätstest durchführen und so das Auffinden von Fehlern beschleunigen.

Auch das verbreitete Dateisystem EXT4 wurde verbessert, um die Funktion zum Ändern der Grösse eines laufenden Dateisystems. Dies wird nun vollständig durch den Kernel durchgeführt und geschieht dadurch erheblich schneller.

Open vSwitch und Netzwerk-Puffergrenze kommen hinzu

Mit dem zunehmenden Einsatz von Cloud Computing steigt auch der Anteil von Netzwerk-Themen im neuen Kernel. So wurde nun Open vSwitch aufgenommen. Netzwerk-Switches sind im Heimbereich meist in den Breitband-Router integriert. Sie stellen angeschlossenen Geräten eine Netzwerkverbindung zur Verfügung, indem sie Netzwerkpakete direkt zwischen zwei kommunizierenden Geräten vermitteln.

Open vSwitch unterstützt viele von modernen Hardware-Switches gewohnte Funktionen wie VLANs (virtuell getrennte Subnetze), Quality of Service (Bandbreitensteuerung), Spanning Tree Protocol (STP, eine Funktion zur Feststellung und Vermeidung von Schleifen im Netzwerk) und Bonding (Zusammenfassung mehrerer Netzwerkschnittstellen) und ermöglicht damit die realitätsnahe Anbindung virtueller Maschinen an ein ebenso virtuelles Netzwerk.

Apropos Bonding: Abseits virtueller Netzwerke bietet «Teaming» nun eine weitere Möglichkeit, mehrere physikalische Netzwerkschnittstellen zu einer virtuellen zusammenzufassen. Im Gegensatz zu den schon länger verfügbaren «Bonding»-Geräten lassen sich Teaming-Geräte im Kontext des Anwenders betreiben.

Systeme, die mit Engpässen des Arbeitsspeichers zu kämpfen haben, werden weiter entlastet: eine neue Funktion begrenzt den Speicher des Netzwerk-Stacks. Auch ist es nun möglich, den Netzwerkverkehr je nach Anwendung zu priorisieren, was vor allem auf Servern von Interesse sein dürfte. «Byte Queue Limits» reduziert Verzögerungen der Netzwerk-Kommunikation, die auf dem Zwischenpuffern von Netzwerkpaketen an den einzelnen Zwischenstationen der Kommunikationsstrecke beruhen. Neu kann die Grösse der Puffer begrenzt werden, damit sich an Netzwerkgeräten eine Möglichkeit zum Tuning der Einstellungen ergibt. Eine vollständige Auflistung aller Neuerungen und Treiber des neuen Linux-Kernels liefert die englischsprachige Seite Kernelnewbies.

Freier Nvidia-Treiber Nouveau reif für Linux-Kernel 3.4

Die Arbeiten an den Android-Treibern dauern an. Ein paar Änderungen wurden auch schon in den Staging-Zweig übernommen, darunter hauptsächlich Korrekturen. Auch für den freien Nvidia-Grafiktreiber Nouveau zeichnet sich eine Änderung ab. Der Hauptentwickler Dave Airlie betrachtet das ABI, die Schnittstelle über die Anwendungen auf den Treiber zugreifen können, mittlerweile als stabil. Er hat darum gebeten, dass Nouveau in Linux 3.4 entsprechend als stabiler Treiber geführt wird, nachdem er bereits schon länger von verschiedenen Distributionen verwendet wird. In der gleichen E-Mail verkündete Airlie auch die Unterstützung für Nvidias neueste Chip-Generation Kepler, die vor allem Ben Skeggs zu verdanken ist.

Tarreau verlängert Update-Intervalle von Linux 2.6.32 

Der betagte Kernel 2.6.32 sollte eigentlich nach 2.6.32.58 nicht weiter mit Aktualisierungen versorgt werden. Dabei wurde diese Version sehr lange unterstützt, da sich schon sehr früh die Kernel-Entwickler auf 2.6.32 als Basis für ihre Unternehmens-Distributionen geeinigt hatten. Da allerdings die grossen Spieler bereits auf Folge-Versionen aufgesprungen sind, lässt Greg Kroah-Hartman die Unterstützung nun fallen und widmet sich nun der LTSI-Initiative der Linux Foundation, die die Bereitstellung und Pflege von Kernelversionen über lange Zeiträume hinweg zum Ziel hat. Die Pflege des 2.6.32 übernimmt nun Willy Tarreau, der Patches jedoch nur in längeren Intervallen bereitstellen wird.

(Mathias Menzer)

Creative Commons Lizenzvertrag
Dieses Werk bzw. Inhalt steht unter einer Creative Commons Namensnennung-Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

The following two tabs change content below.
Mathias Menzer
Mathias Menzer behält die Entwicklung des Linux- Kernels im Blick, um über kommende Funktionen von Linux auf dem Laufenden zu bleiben und immer mit interessanten Abkürzungen und komplizierten Begriffen dienen zu können.