{"id":5709,"date":"2024-03-18T13:24:49","date_gmt":"2024-03-18T13:24:49","guid":{"rendered":"https:\/\/byte-bucket.com\/2024\/03\/18\/linux-6-8-neue-funktionen-und-verbesserungen-im-hintergrund\/"},"modified":"2024-03-18T13:24:49","modified_gmt":"2024-03-18T13:24:49","slug":"linux-6-8-neue-funktionen-und-verbesserungen-im-hintergrund","status":"publish","type":"post","link":"https:\/\/byte-bucket.com\/?p=5709","title":{"rendered":"Linux 6.8: Neue Funktionen und Verbesserungen im Hintergrund"},"content":{"rendered":"<p>Die Ver\u00f6ffentlichung von Linux 6.8 brachte keine bahnbrechenden \u00c4nderungen mit sich, wie Linus Torvalds in seiner Ank\u00fcndigung betonte. Diejenigen, die auf neue Dateisysteme, revolution\u00e4re Funktionen und eine breite Palette an unterst\u00fctzter Hardware gewartet hatten, wurden entt\u00e4uscht. Der einzige bemerkenswerte Neuzugang war der neue Grafiktreiber f\u00fcr Intel Xe. Dennoch bietet Linux 6.8 einige interessante Funktionen, auch wenn die meisten davon eher im Hintergrund wirken.<\/p>\n<p>Bereits kurz nach der Ver\u00f6ffentlichung von Linux 6.8 wurde Linux 6.8.1 ver\u00f6ffentlicht. Es wird dringend empfohlen, dass alle Benutzer von Linux 6.8 das Update auf Version 6.8.1 durchf\u00fchren, da es wichtige Sicherheits- und Fehlerkorrekturen enth\u00e4lt.<\/p>\n<p>Eine der bemerkenswertesten Neuerungen in Linux 6.8 ist die Unterst\u00fctzung von Rust im stabilen Linux-Kernel. Rust wurde offiziell mit Kernel 6.1 im Jahr 2022 eingef\u00fchrt, konnte aber bisher nicht f\u00fcr die Entwicklung neuer Module oder Treiber genutzt werden. Mit der Ver\u00f6ffentlichung von Linux 6.8 steht nun erstmals ein praktischer und funktionsf\u00e4higer Treiber zur Verf\u00fcgung, der in der Programmiersprache Rust entwickelt wurde. Dieser Treiber erm\u00f6glicht die Unterst\u00fctzung des Fast-Ethernet-Controllers vom Typ AX88796B von Asix Electronics, der vor allem in industriellen Anwendungen im Bereich der eingebetteten Systeme eingesetzt wird.<\/p>\n<p>Bereits im Linux-Kernel enthalten ist ein Treiber f\u00fcr den AX88796B, der in C geschrieben ist. Die Rust-Version des Treibers implementiert die Funktionen des C-Treibers vollst\u00e4ndig. Standardm\u00e4\u00dfig ist der C-Treiber im Linux-Kernel aktiviert. Um die Rust-Version zu verwenden, muss beim Konfigurieren des Kernels vor dem Build der Schalter AX88796B_RUST_PHY ausgew\u00e4hlt werden.<\/p>\n<p>Die Entscheidung, einen bereits bestehenden und funktionierenden Treiber in Rust neu zu implementieren, ist eine kluge Strategie. Da der Treiber sowohl in C als auch in Rust vorhanden ist, erm\u00f6glicht dies einen praktischen Vergleich und sinnvolle Tests zwischen Rust und C. F\u00fcr den Fall eines neuen Treibers f\u00fcr bisher nicht unterst\u00fctzte Hardware w\u00e4re eine solche M\u00f6glichkeit nicht gegeben gewesen.<\/p>\n<p>Mit der Implementierung von Abstraktionsschichten legt das Entwicklerteam au\u00dferdem den Grundstein f\u00fcr physische Netzwerktreiber. K\u00fcnftige Netzwerktreiber haben die M\u00f6glichkeit, entweder in C oder Rust programmiert zu werden.<\/p>\n<p>Ein weiterer Schwerpunkt von Linux 6.8 liegt auf der Planung im Kernel, also der Verteilung der Rechenzeit auf die verschiedenen konkurrierenden Prozesse. Nachdem der Standard-Scheduler bereits in Linux 6.6 grundlegend \u00fcberarbeitet wurde, erf\u00e4hrt dieser Bereich in Linux 6.8 weitere Verbesserungen.<\/p>\n<p>Der neue Scheduler EEVDF (Earliest Eligible Virtual Deadline First), der in Linux 6.6 eingef\u00fchrt wurde, wird optimiert. Durch die Implementierung eines Fastpath-Mechanismus kann die Auswahl der auszuf\u00fchrenden Aufgaben effizienter gestaltet werden. Erste Tests zeigen, dass der O(1) Fastpath tats\u00e4chlich die Auswahl der Aufgaben und somit die Effizienz des Schedulers verbessert.<\/p>\n<p>Im Bereich der Echtzeitanwendungen verbessert der neue Kernel den Deadline-Scheduler, der auf dem grundlegenden Konzept der POSIX Realtime Scheduling Classes basiert. Dieser Scheduler erm\u00f6glicht es, dass Echtzeit-Aufgaben, die einen bestimmten Rechenzeitbedarf und eine Deadline haben, priorisiert werden. Um zu verhindern, dass Echtzeit-Aufgaben die normalen Aufgaben vernachl\u00e4ssigen und das System beeintr\u00e4chtigen, wird eine feste CPU-Zeitreservierung f\u00fcr administrative Aufgaben eingef\u00fchrt.<\/p>\n<p>Standardm\u00e4\u00dfig sind f\u00fcnf Prozent der Ressourcen f\u00fcr administrative Aufgaben reserviert, w\u00e4hrend die restlichen 95 Prozent f\u00fcr Echtzeitverarbeitung zur Verf\u00fcgung stehen. Diese L\u00f6sung tr\u00e4gt den Namen Realtime Throttling. Allerdings bleiben die f\u00fcnf Prozent CPU-Zeit ungenutzt, wenn es keine niedrig priorisierten Aufgaben gibt. Um dieses Problem zu l\u00f6sen, wird in Linux 6.8 der Deadline-Server eingesetzt. Niedrig priorisierte Aufgaben werden in eine separate Klasse innerhalb des Deadline-Servers verschoben, sodass sie bevorzugt in Echtzeit verarbeitet werden. Der Deadline-Server gibt einen CPU-Bedarf von lediglich f\u00fcnf Prozent an und verteilt die ungenutzten f\u00fcnf Prozent CPU-Zeit an die Echtzeit-Prozesse, wenn er keine Aufgaben hat.<\/p>\n<p>Mit Linux 6.8 wurden also einige interessante Funktionen und Verbesserungen eingef\u00fchrt, auch wenn sie nicht sofort sichtbar sind. Die Unterst\u00fctzung von Rust f\u00fcr die Entwicklung von Treibern er\u00f6ffnet neue M\u00f6glichkeiten, und der optimierte Scheduler verbessert die Effizienz des Kernels. Die Verbesserungen im Bereich der Echtzeitanwendungen sorgen daf\u00fcr, dass das System immer ausreichend Ressourcen f\u00fcr administrative Aufgaben hat. Insgesamt ist Linux 6.8 ein solides Update, das sowohl in Bezug auf Sicherheit als auch auf Leistung empfohlen wird.<\/p>\n<p>Schlagw\u00f6rter: Linux + Rust + Linus Torvalds<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die Ver\u00f6ffentlichung von Linux 6.8 brachte keine bahnbrechenden \u00c4nderungen mit sich, wie Linus Torvalds in seiner Ank\u00fcndigung betonte. Diejenigen, die auf neue Dateisysteme, revolution\u00e4re Funktionen und eine breite Palette an unterst\u00fctzter Hardware gewartet hatten, wurden entt\u00e4uscht. Der einzige bemerkenswerte Neuzugang war der neue Grafiktreiber f\u00fcr Intel Xe. Dennoch bietet Linux&#46;&#46;&#46;<\/p>\n","protected":false},"author":4,"featured_media":5708,"comment_status":"","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-5709","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/byte-bucket.com\/index.php?rest_route=\/wp\/v2\/posts\/5709","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/byte-bucket.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/byte-bucket.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/byte-bucket.com\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/byte-bucket.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5709"}],"version-history":[{"count":0,"href":"https:\/\/byte-bucket.com\/index.php?rest_route=\/wp\/v2\/posts\/5709\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/byte-bucket.com\/index.php?rest_route=\/wp\/v2\/media\/5708"}],"wp:attachment":[{"href":"https:\/\/byte-bucket.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5709"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/byte-bucket.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5709"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/byte-bucket.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5709"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}