Linux 4.20 veröffentlicht - was sich in der neuen Kernel-Version geändert hat

Wir haben bereits über die Innovationen gesprochen, die im Linux-Kernel 4.18 vorgenommen wurden . Heute werden wir über das, was in 4.20 eingeführt wurde, und einen kurzen Rückblick auf die nächste Version sprechen.

Mit hoher Wahrscheinlichkeit wird es "5.0" genannt.


/ Foto von Gregory "Slobirdr" Smith CC BY-SA

Die neueste Version des Kernels wurde im vergangenen Dezember veröffentlicht. Das Update steht auf der offiziellen Website zum Download zur Verfügung . Diese Version war der Rekordhalter für die Anzahl der hinzugefügten Codezeilen - ihre Anzahl wurde um 354.000 erhöht. Weitere wurden nur in Linux Version 4.13 (September 2017) hinzugefügt. Zu den wichtigsten Updates gehören neue Treiber, verbesserte Sicherheit und Änderungen bei der Arbeit mit Arrays.

Neue Treiber und neue Hardware


Linux 4.20 bietet Unterstützung für AMD Picasso- und Raven 2- Hybridprozessoren , Qualcomm Snapdragon 835- Chipsysteme sowie die chinesische Hygon Dhyana-CPU auf Basis der AMD Zen-Architektur. Dadurch wird die Anzahl der Geräte erhöht, auf denen Linux ausgeführt werden kann.

Die Arbeiten am Code für die AMD Zen 2-Architektur haben ebenfalls begonnen , aber in zukünftigen Versionen warten ernsthafte Änderungen darauf. Die Änderungen betrafen auch Intel Icelake-Chips. Die Entwickler fügten Unterstützung für den DSI-Controller und Funktionen zur Steuerung der Leistungsmodi des Prozessors hinzu.

Es wurde ein Code hinzugefügt, der für die Arbeit mit AMD Vega 20 verantwortlich ist. Er wird jedoch zumindest bis zur Veröffentlichung der GPU weiter verbessert (die Veröffentlichung ist für das erste Quartal 2019 geplant ).

Die Änderungen betrafen auch den VKMS-Treiber (Virtual Kernel Mode-Setting), der in der vorherigen Kernelversion hinzugefügt wurde. Es simuliert das einfachste virtuelle Ausgabegerät und wird verwendet, um die Arbeit des X-Servers oder eines anderen Grafiksubsystems auf Computern ohne Monitor zu organisieren. Gleichzeitig bietet es die Möglichkeit, vorhandene GPUs zu verwenden. In Linux Kernel 4.20 erhielt VKMS GEM- und Cursor-Unterstützung.

Außerdem konnte der neue Kern mit Apple Magic Trackpad 2-Trackpads und Xbox-Controllern arbeiten.

Array-Änderungen


Arrays mit variabler Länge (VLA) wurden aus dem Kernel entfernt, dessen Größe in der Ausführungsphase festgelegt wird, anstatt den Code zu kompilieren. Sie wurden langsamer und konnten die Sicherheit des Betriebssystems beeinträchtigen. Linus Torvalds wurde lange Zeit gebeten, VLA loszuwerden, und er selbst kritisierte aktiv die Entscheidung, Arrays mit variabler Länge zu verwenden. In Kernel 4.20 wurden die meisten von ihnen endgültig ausgeschlossen.

Es wurde auch eine XArray-Datenstruktur implementiert, die bereits in 4.17 implementiert werden sollte. Dies ist ein abstrakter Datentyp, der sich wie ein großes Array von Zeigern verhält. Im Gegensatz zu dynamischen Arrays müssen Sie bei Verwendung von XArray nichts an der Speichersteuereinheit ändern, um die Struktur zu erweitern. Derzeit werden jedoch nur der Kernel-Seiten-Cache und die Memremap in XArray übersetzt.

Sicherheitsupdates


Die Speck- Blockverschlüsselung wurde aus Linux 4.20 entfernt, da der Verdacht bestand , dass die Implementierung Hintertüren enthielt. Sie führten auch die STACKLEAK- Funktion ein (nicht in 4.19), die Linux-Benutzer vor verschiedenen Arten von Sicherheitslücken schützt.

Insbesondere wird die Informationsmenge, die für Angreifer vom Kernel-Stack nützlich ist, auf den Benutzerbereich reduziert. STACKLEAK blockiert auch eine Reihe von Angriffen auf nicht initialisierte Variablen und bietet Tools zur Überwachung des "Überlaufs" des Kernel-Stacks.

In Linux 4.20 wurde der STIBP-Patch (Single Thread Indirect Branch Predictors) hinzugefügt , der vor Angriffen vom Typ Spectre schützt. Sie zielen auf die Hardware-Schwachstelle moderner Prozessoren ab, die mit der Implementierung von spekulativem Computing verbunden sind .

Was die Community über Linux Kernel 4.20 denkt


Die Bewohner von Hacker News stellen fest, dass Linux immer Probleme mit Treibern und der Menge der unterstützten Hardware hatte. Mit Updates 4.20 konnte dieses Problem teilweise behoben und das Spektrum der für die Arbeit verfügbaren Architekturen erweitert werden. Einige Benutzer sind jedoch besorgt darüber, dass das Betriebssystem mit dem Übergang zu einem neuen Kernel langsamer zu arbeiten begann.

Der Grund für die "Regression" war ein zusätzlicher Code zum Schutz vor Spectre. Der STIBP-Patch ist standardmäßig aktiviert und führt bei Systemen mit SMT / Hyper-Threading zu „Bremsen“. In einigen Fällen kann die Leistung um 50% reduziert werden. Linus Torvalds hat bereits das Problem angesprochen, eine Funktion auf Wunsch des Benutzers und nicht automatisch zu starten. Bisher wurde jedoch nichts unternommen.

Wie Balsoft in den Kommentaren feststellte, war die Verschlechterung der Linux-Leistung aufgrund von STIBP der Grund, warum dieser Code aus den Kernel-Versionen 4.19.4 und 4.14.83 entfernt wurde . Daher besteht Grund zu der Annahme, dass Entwickler in Zukunft Kernel 4.20 ohne einen Patch veröffentlichen werden, der Spectre-Angriffen entgegenwirkt.


/ Foto hackNY.org CC BY-SA

Was werden sie "lehren" 5.0


Wenn Sie dem Ansatz von Torvalds folgen , Releases nach der Anzahl der Finger einer Person zu nummerieren , sollte Version 21 dies nicht sein . Aus diesem Grund wird 2019 mit hoher Wahrscheinlichkeit das Geburtsjahr des Linux-Kernels 5.0 sein.

Zu den Verbesserungen der kommenden Version gehört die Unterstützung neuer Hardware und zusätzlicher Geräte. Wahrscheinlich erhalten Benutzer die Möglichkeit, die Cougar 700K-Gaming-Tastatur anzuschließen und mit Intels Chameleon96 - FPGA zu arbeiten.

Die Arbeit an der Y2038-Ausgabe und anderen Sicherheitsproblemen sowie an neuen Treibern für Grafik-, Hybrid- und Zentraleinheiten wird fortgesetzt. Der lang erwartete WireGuard VPN-Tunnel wird auch zum Kernel kommen .

In der nächsten Version wird das I3C-Subsystem angezeigt, für das sie in 4.20 keine Zeit hatten, etwas hinzuzufügen. Es verkörpert die Vorteile von I2C und SPI und eignet sich für die Arbeit mit IoT.



Erster Corporate IaaS Blog:


Unser Telegramm IaaS Blog:

Source: https://habr.com/ru/post/de435214/


All Articles