Login
Newsletter
Werbung

Mo, 10. Februar 2020, 12:44

Software::Kernel

Erste Vorschau auf Linux-Kernel 5.6

Linux-Initiator Linus Torvalds hat die Kernel-Version 5.6-rc1 als erste Testversion für Linux 5.6 freigegeben. Die neue Version bringt WireGuard, USB4 und viele weitere Optimierungen und Verbesserungen.

Linus Torvalds

Hans-Joachim Baader

Linus Torvalds

Zwei Wochen nach Linux 5.5 hat Linus Torvalds nun die erste Testversion von Linux 5.6 veröffentlicht. Die kommenden sieben Wochen (bei Bedarf auch mehr) dienen zum Testen der Änderungen und Korrigieren der gefundenen Probleme. In seiner Ankündigung weist Torvalds auf den neuen Systemaufruf openat2 hin, der lange in Entwicklung war und neue Möglichkeiten beim Öffnen von Dateien bietet. Er stellt ferner fest, dass der neue Kernel mit bisher 10.780 Änderungen gegenüber den letzten Versionen fast 2.000 Änderungen kleiner ausfällt. Er vermutet, dass das eine verspätete Auswirkung von Weihnachten und Neujahr ist.

Selten dürften sich Anwender so auf eine neue Kernel-Version gefreut haben wie auf 5.6, die Anfang bis Mitte April offiziell erscheinen dürfte. Denn die Änderungen haben es in sich. So wird nun USB4 unterstützt und der lange Weg von WireGuard in den Kernel ist nun abgeschlossen. WireGuard ist ein VPN-Tunnel, der für sich in Anspruch nimmt, schneller, einfacher und nützlicher als IPsec zu sein. Doch WireGuard brachte anfänglich seine eigenen kryptografischen Funktionen mit, die die Funktionalität im Kernel duplizierten. Eine lange Auseinandersetzung resultierte, da die Kernel-Entwickler keine duplizierte Funktionalität akzeptieren wollten. Dabei erkannten sie aber an, dass die von WireGuard mitgebrachten Funktionen die bessere Schnittstelle aufwiesen, die Schnittstellen im Kernel dagegen suboptimal sind und die korrekte Nutzung der Kryptografie erschweren. Daher wurden die neuen Schnittstellen mit Linux 5.5 in den Kernel übernommen.

In der ARM64-Architektur wird jetzt E0PD unterstützt, was die Vorteile der Kernel Page Table Isolation bringt, aber keine Geschwindigkeitseinbußen verursacht. Die RNG-Instruktion, die ab ARMv8.5 vorhanden ist, wird zur Initialisierung des Zufallsgenerators verwendet.

Zu den Namensräumen im Kernel kam jetzt auch noch ein Zeit-Namensraum hinzu. Eine der ersten Anwendungen ist eine korrekte Behandlung der Zeit, wenn ein Container zwischen Hosts migriert wird. Auch BPF erhielt neue Funktionalität, darunter einen Dispatcher und zusammengefasste Map-Operationen sowie dynamische Programmerweiterungen, die es ermöglichen, globale Funktionen zu laden oder gar zur Laufzeit zu ersetzen. Ebenfalls recht weitreichend ist der neue BPF-Programmtyp BPF_PROG_TYPE_STRUCT_OPS, der es ermöglicht, bestimmte Kernel-Funktionen durch BPF-Programme zu ersetzen. Die erste Anwendung dieser Funktionalität ist die Implementierung eines TCP-Stauvermeidungsalgorithmus in BPF.

Die neue Idle Injection kann eine CPU, die zu überhitzen droht, zwangsweise für kurze Zeit anhalten. Ferner wurde der Systemaufruf openat2 hinzugefügt. Dieser verfügt über neue Flags, die definieren, wie das System Pfade behandelt. So kann man verbieten, symbolischen Links oder »magischen« Links zu folgen, in andere (gemountete) Dateisysteme zu wechseln oder außerhalb eines Unterverzeichnisses zu suchen.

Im Netzwerkbereich kam die Queue-Disziplin enhanced transmission selection scheduler hinzu, die Teil der 802.1Qaz-Spezifikation ist. Neu ist auch der Paket-Scheduler Flow Queue PIE, der vor allem für Kabelmodems gedacht ist und das Problem der zu großen Puffer bekämpfen soll. Multipath TCP, eine seit langem nur außerhalb des Kernels gepflegte Funktionalität, wird nun in den Kernel kommen, in Linux 5.6 wird aber nur die Basis dafür gelegt.

Das Dateisystem Btrfs erhielt eine asynchronous discard-Option. Das Dateisystem vboxfs, das den Zugriff auf gemeinsame Ordner in VirtualBox ermöglicht, wurde nun aufgenommen. Neu ist auch Zonefs, ein simples System, das es ermöglicht, jede Zone eines in Zonen aufgeteilten Gerätes als Datei zu exportieren. Die Kernel-Funktionen ioremap_nocache und devm_ioremap_nocache wurden entfernt, da ioremap nun dafür ausreicht.

Ferner löst Linux 5.6 das Jahr-2038-Problem für 32-Bit-Systeme. Darüber hinaus kamen auch wieder Treiber für zahlreiche Chips aller Art hinzu. Die zahlreichen weiteren Änderungen sind im Änderungslog von Git zu finden. Kernel und Patch-Dateien sind von zahlreichen Spiegelservern von kernel.org herunterzuladen.

Werbung
Kommentare (Insgesamt: 11 || Alle anzeigen || Kommentieren )
Re[2]: WireGuard (1ras, Do, 13. Februar 2020)
Re: WireGuard (Verfluchtnochmal_5987108, Di, 11. Februar 2020)
Re[4]: WireGuard (Verfluchtnochmal_5987108, Di, 11. Februar 2020)
Re[5]: WireGuard (Verfluchtnochmal_5987108, Di, 11. Februar 2020)
Re[4]: WireGuard (schmidicom, Di, 11. Februar 2020)
Pro-Linux
Pro-Linux @Twitter
Neue Nachrichten
Werbung