Die Neuerungen von Linux 3.2

Seite 2: Storage, Infrastruktur

Inhaltsverzeichnis

Der Device Mapper bietet ab 3.2 eine experimentelle "persistent data library". Ein erster Nutzer dieser Infrastruktur zum Speichern von Device-Mapper-Metadaten ist das Target "dm-thin", das Funktionen zum Thin Provisioning von Speicherplatz ermöglicht – mit ihm lässt sich also mehr Speicherplatz exportieren, als tatsächlich vorhanden ist. Dies Target bringt zudem eine verbesserte Snapshot-Funktionen mit, die effizienter mit dem Speicherplatz umgeht.

Der Writeback-Code drosselt jetzt Programme effizienter, die zu viele Daten zum Schreiben auf Datenträger anliefern (u. a. 1, 2, 3, 4, 5). Das soll sicherstellen, dass das System flott auf Benutzereingaben reagiert und nicht durch ein Ansammeln großer Datenmengen in Zwischenspeichern überlastet wird – etwa wenn man mit dem Programm dd auf einen langsamen Datenträger schreibt. Torvalds merkte in der Freigabe-Mail zum 3.2-rc1 an, diese Änderungen seien zwar sehr klein, hätten aber das Potenzial, von allen Anwendern bemerkt zu werden. Es sind allerdings durchaus noch Situationen bekannt, wo das System aus Sicht des Anwenders langsam reagiert, weil das Speichersubsystem beschäftigt ist. Mel Gorman arbeitet an Änderungen (u. a. 1, 2), um ein häufiger auftretendes Problem rund um Transparent Huge Pages (THP) zu beseitigen; Hintergründe liefert ein LWN.net-Artikel.

Mit Hilfe des neuen "CFS bandwidth controller" und der Infrastruktur für Control Croups lässt sich die CPU-Zeit von Prozess-Gruppen limitieren, damit beispielsweise Nutzer von Rechenzeit in der Cloud nicht mehr CPU-Ressourcen nutzen können, als sie bezahlt haben (u. a. 1, Dokumentation).

Der Kernel markiert sich jetzt mit TAINT_OOT_MODULE (Kurzform für "tainted: out of tree module"), wenn er Module lädt, deren Code nicht Bestandteil des offiziellen Linux-Kernels ist. Dadurch sollen Entwickler, die Fehlerberichte durchsehen, solche Umgebungsbedingungen schnell erkennen.

Zusammen mit einem TPM soll das für Linux 3.2 aufgenommene Extended Verification Module (EVM) von außen vorgenommene Manipulationen an Systemdateien aufdecken und so sicherstellen, dass nicht schon beim Systemstart Schadcode geladen wird.

Der Zeitgeber-Treiber für Micosofts Virtualisierungstechnik Hyper-V zog vom Staging-Bereich in den x86-Architektur-Code um; auch einige andere Treiber für Kern-Techniken von Hyper-V konnten nach zahlreichen Verbesserungen durch Microsoft-Programmierer nun die Staging-Einstufung ablegen. Die Hyper-V-Treiber für die emulierte Pointer-, Netzwerk- und Storage-Hardware bleiben vorerst noch im Staging-Bereich, dürften diesen aber mit Linux 3.3 verlassen.

Durch einige Patches (u. a. 1) umschifft Linux 3.2 eine Eigenart des L1-Instruktioncaches in AMDs Bulldozer-Prozessoren, die bei bestimmten Arbeitsszenarien zu Performance-Einbußen führt. Diese Patches wurden schon vor Wochen für die Stable-Kernel der Serien 3.0 und 3.1 eingereicht (1, 2), dort aber bislang nicht integriert.

Linux 3.2 arbeitet auch auf Qualcomms Hexagon-CPU-Architektur (u. a. 1, 2). Neu ist zudem Unterstützung für den über die x86-Instruktion RDRAND ansprechbaren Zufallszahlengenerator der Ivy-Bridge-CPUs, die Intel in diesem Jahr als Sandy-Bridge-Nachfolger einführen will (1, 2, 3).