Login
Newsletter
Werbung

Mo, 13. April 2015, 09:15

Software::Kernel

Linux-Kernel 4.0 freigegeben

Linux-Initiator Linus Torvalds hat Version 4.0 des Linux-Kernels freigegeben. Der neue Kernel enthält zahlreiche Verbesserungen in nahezu allen Komponenten, unter denen die Einführung des grundlegenden Mechanismus des Live-Patchings herausragt.

Linus Torvalds, Initiator des Linux-Kernels

Linux Foundation

Linus Torvalds, Initiator des Linux-Kernels

Gut zwei Monate nach Linux 3.19 ist nun Linux 4.0 fertiggestellt. Als Linux-Initiator Ima Sheep Linus Torvalds am 23. Februar die Kernel-Version 4.0-rc1 freigab, stand auch fest, dass die Versionsnummer des kommenden Kernels 4.0 statt 3.20 sein wird. Nach vier Jahren mit Linux 3.x fanden es Torvalds und die Mehrheit der Teilnehmer an einer Online-Umfrage an der Zeit, die kleine Versionsnummer wieder auf eine handliche Zahl zurückzusetzen. Am Funktionsumfang ändert das jedoch nichts und es sind auch keine Änderungen damit verbunden, die die Kompatibilität beeinträchtigen. Der neue Kernel erhielt den handlichen Codenamen »Hurr durr I'ma sheep«. Die zweiwöchige Integrationsphase für Linux 4.1, die unter anderem eine optionale Verschlüsselung für das Dateisystem Ext4 bringen könnte, ist damit wie üblich eröffnet.

Mit gut 10.000 Änderungen seit Linux 3.19 ist Linux 4.0 die Version mit den wenigsten Änderungen seit einiger Zeit. Für den generellen Trend zu immer mehr Änderungen hat dies allerdings keine Bedeutung, denn schon die kommende Version könnte nach derzeitigem Stand wieder deutlich größer ausfallen.

Linux 4.0 markiert, wie Torvalds feststellte, zudem das Erreichen einer halben Million Git-Commits insgesamt, und die Zahl der Objekte in Git überschritt die Marke von vier Millionen. Zufälligerweise wurden genau mit Linux 3.0 eine Viertel Million Commits und zwei Millionen Objekte in Git erreicht. Somit hat nicht weniger als die Hälfte der Linux-Entwicklung in den letzten vier Jahren stattgefunden.

Die schlagzeilenträchtigste Neuerung in Linux 4.0 ist wohl der grundlegende Mechanismus zum Patchen des Kernels im laufenden Betrieb. Gemeinsam von Suse und Red Hat vorangetrieben, ist der Mechanismus die Grundlage sowohl für kGraft als auch für kpatch sowie alternative Lösungen. Kontroversen gibt es noch über das zu verwendende Konsistenzmodell, das Thema kann daher noch nicht als abgeschlossen bezeichnet werden.

Threads, die die Fristen für RCU handhaben, können jetzt mit Echtzeit-Priorität laufen. Der Netzwerk-Stack kann nun je nach Host über die Routing-Tabelle unterschiedliche Stau-Verhinderungsalgorithmen anwenden. Die TIPC-Implementation berücksichtigt jetzt Namespaces. Außerdem unterstützt das Traffic-Control-Subsystem Filter, die in der virtuellen eBPF-Maschine laufen. Open vSwitch erhielt die Möglichkeit, eigene Flow-IDs zur Identifikation von Netzwerkströmen zu verwenden, was die Geschwindigkeit teils deutlich steigern soll.

Das Overlay-Dateisystem unterstützt jetzt mehrere darunterliegende Dateisysteme, die nicht änderbar sind. In Btrfs wurden zahlreiche Stellen verbessert, die bei Speichermangel Probleme machten, die Arbeit ist aber noch nicht beendet. Parallel NFS (pNFS) unterstützt bereits das FlexFile-Layout, das noch in Entwicklung ist. Es soll bewirken, dass die Datei-Metadaten an einer anderen Stelle als die Datei-Inhalte gespeichert werden. Das Subsystem für persistente Speicherung kann optional eine Gerätedatei bereitstellen, mit der Programme Daten in diesen Speicher schreiben können. Das Dateisystem ubifs wurde stärker parallelisiert und unterstützt nun auch Security-Labels in den erweiterten Attributen.

Die Dateisystem-Option lazytime, die bisher nur in ext4 unterstützt wird, steht jetzt als Alternative zu relatime bereit. Das Zugriffkontrollsystem Smack erhielt eine Schnittstelle zum Netfilter-System, was es möglich macht, Sicherheits-Labels an Netzwerkpakete zu vergeben. Der von Android stammende Binder-Code wurde erweitert, um mit Zugriffkontrollsystemen wie SELinux, Smack und AppArmor zusammenzuarbeiten. Verbesserungen gab es auch wieder beim Analysewerkzeug »perf«.

Das I2O-Bus-Subsystem wurde in das Staging-Verzeichnis verschoben und soll bald komplett entfernt werden. I2O war ein gescheiterter Versuch von Intel, ein neues Bussystem einzuführen, und wird wohl nirgends mehr genutzt. Neu ist die Unterstützung für nichtflüchtigen Speicher, vor allem um Dateisysteme darin zu konstruieren.

Die PA-RISC-Architektur kann jetzt keine Binärprogramme mehr ausführen, die für 32 Bit HP-UX-Systeme geschrieben wurden. Der Treiber für die I/O-Speicherverwaltungseinheit (IOMMU) für ARM erhielt ein neues generisches API für die Verwaltung von Seitentabellen. Im LED-Subsystem gibt es nun eine neue Geräteklasse für LEDs, die als Blitzlicht eingesetzt werden. Das virtio-Subsystem entspricht jetzt dem Virtio-Standard 1.0.

Für Kernel-Entwickler ist der neue Kernel Address Sanitizer (KASan) von Interesse, der dabei hilft, Probleme mit der Speicherallokation und Speicherzugriffen zu finden. Er ist zunächst nur für x86_64 verfügbar.

Darüber hinaus wurden zahlreiche Treiber aktualisiert, erweitert oder kamen neu hinzu. Eine Liste aller Änderungen kann man dem Git-Repositorium entnehmen. Die Seite Kernelnewbies.org wird in Kürze eine übersichtliche Zusammenfassung der Änderungen veröffentlichen. Die aktuelle Version von Linux kann von kernel.org und zahlreichen Spiegel-Servern in Form von Patches oder tar-Paketen heruntergeladen werden.

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