Login
Newsletter
Werbung

Mo, 27. August 2018, 09:19

Software::Kernel

Erste Vorschau auf Linux-Kernel 4.19

Linux-Initiator Linus Torvalds hat die Kernel-Version 4.19-rc1 als erste Testversion für Linux 4.19 freigegeben. Die neue Version bringt Geschwindigkeitsoptimierungen und zahlreiche Verbesserungen in allen Bereichen.

Linus Torvalds, Initiator des Linux-Kernels

Linux Foundation

Linus Torvalds, Initiator des Linux-Kernels

Zwei Wochen nach Linux 4.18 hat Linus Torvalds nun die erste Testversion von Linux 4.19 veröffentlicht. Die kommenden sieben Wochen (bei Bedarf auch mehr) dienen zum Testen der Änderungen und Korrigieren der gefundenen Probleme. Linus Torvalds hatte zu dieser Version eine Menge zu sagen. Es war ein schwieriger, nach seinen Worten frustrierender Integrationszyklus. Zum einen kam der L1TF-Prozessorfehler, eine weitere Spectre-Variante, auf. Die Patches dazu waren anfangs nicht öffentlich, so dass die bewährte Infrastruktur wie linux-next und die zahlreichen automatisierten Testsysteme nicht zur Verfügung standen. Dadurch bekamen die Entwickler zu spüren, wie gut und wichtig diese Systeme mittlerweile geworden sind.

Ein weiteres Problem, das Torvalds große Sorgen machte, hatte mit dem Ungültigmachen von TLB-Einträgen zu tun. Solche Probleme sind extrem schwierig zu debuggen. Auch wenn der Fehler beseitigt werden konnte, ist der Code in diesem Bereich laut Torvalds sehr schwierig und kompliziert. Hier wäre eine Bereinigung fällig.

Bei der Zahl der Änderungen in Linux 4.19-rc1 liegt mit über 12.300 im höheren Bereich. Die neue Version wird Linux 4.9 nicht erreichen, aber in die Größenordnung von Linux 4.12 und Linux 4.15 vorstoßen. Die Änderungen verteilen sich wie fast immer: Knapp zwei Drittel fallen in den Treiberbereich, wobei Grafik- und Netzwerktreiber den größten Teil ausmachen. Der Rest verteilt sich vor allem auf Architektur-Updates, Dateisysteme, den Kern des Kernels, Netzwerk, Dokumentation und Werkzeuge.

Zu den zahlreichen Änderungen in Linux 4.19 zählt eine stärker gebündelte Verarbeitung von ankommenden Paketen, die durch verbesserte Cache-Nutzung und weniger Funktionsaufrufe den Netzwerkdurchsatz steigert. Der Prozess-Scheduler soll nun besser in der Lage sein, jedem Prozessor die optimale Taktfrequenz zu geben, die immer einen Kompromiss aus Geschwindigkeitsanforderung, Latenz und Energieverbrauch darstellt. Der alte Tracing-Mechanismus »iprobes«, der schon seit langem durch ftrace ersetzt ist, wurde jetzt entfernt. Für asynchrone Ein- und Ausgabe wurde eine neue Polling-Schnittstelle geschaffen. Sie war bereits in Linux 4.18-rc1 enthalten, wurde aber im weiteren Verlauf wieder entfernt und musste überarbeitet werden. Die minimale GCC-Version zum Compilieren des Kernels ist nun die auch bereits mehrere Jahre alte Version 4.6.

Erstmals wird jetzt das »Cache Pseudo Locking« von Intel-Prozessoren unterstützt, mit dem sich der Cache mit bestimmten Daten laden lässt, auf die dann immer sehr schnell zugegriffen werden kann. Kernel Page Table Isolation (KPTI), die primäre Maßnahme gegen Meltdown, ist jetzt auch für 32 Bit x86-Systeme implementiert. Bei 64 Bit ARM gibt es nun Restartable Sequences und das GCC-Plugin »Stackleak«. Ferner kann der Kernel jetzt so konfiguriert werden, dass er seinen Zufallsgenerator mit der CPU-Instruktion rdrand initialisiert. Die Aktivierung der Option setzt voraus, dass man dem Prozessorhersteller vertraut, keine Hintertüren in rdrand eingebaut zu haben. Eine weitere neue Option soll das unvorhergesehene Überschreiben von Dateien in öffentlichen Verzeichnissen wie /tmp erschweren.

Beim Dateisystem XFS wurden die Mount-Optionen barrier und nobarrier entfernt, die seit Jahren keine Bedeutung mehr hatten und spätestens jetzt aus fstab-Dateien oder Skripten entfernt werden müssen. Neu ist das Enhanced Read-Only Filesystem (EROFS), das bei Live-CDs oder Firmware in Mobilgeräten zum Einsatz kommen kann. Ebenfalls neu ist ein Block I/O Latency Controller, mit dem man eine maximale Latenzzeit für spezifische Control Groups festlegen kann. Die asynchrone bsg-Schnittstelle wurde nun entfernt, wie bereits erläutert. Es gibt weiterhin die synchrone Schnittstelle, während die asynchrone große Designprobleme und wohl keine Nutzer hatte.

Im Netzwerkbereich haben Programme nun die Möglichkeit, Pakete zu einem späteren Zeitpunkt versenden zu lassen. Die Queuing Discipline CAKE, die die Netzwerklatenzen senken soll, wurde in den Kernel integriert. Eine weitere neue Queuing Discipline skbprio sortiert die Pakete nach einer internen Priorität. Sie soll gegen Denial-of-Service-Angriffe zum Einsatz kommen. Als weitere Neuerung wird nun auch der Hardware-beschleunigte Empfang von TLS-verschlüsselten Paketen unterstützt.

Wie bereits berichtet, wurde das GNSS-Subsystem in den Kernel aufgenommen. 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: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung