Rust wird in den Linux 6.1-Kernel aufgenommen. Rust-Treiber für Intel-Ethernet-Chips erstellt

Auf dem Kernel Maintainers Summit kündigte Linus Torvalds an, dass, sofern keine unvorhergesehenen Probleme auftreten, Patches zur Unterstützung der Rust-Treiberentwicklung in den Linux 6.1-Kernel aufgenommen werden, der voraussichtlich im Dezember veröffentlicht wird.

Zu den Vorteilen der Rust-Unterstützung im Kernel gehören, dass das Schreiben sicherer Gerätetreiber einfacher wird, indem die Wahrscheinlichkeit von Speicherfehlern verringert wird, und dass neue Entwickler ermutigt werden, sich am Kernel zu beteiligen. „Rost ist eines dieser Dinge, die meiner Meinung nach neue Gesichter hervorbringen werden … wir werden alt und ergrauen“, sagte Linus.

Linus kündigte außerdem an, dass die Kernel-Version 6.1 einige der ältesten und grundlegendsten Teile des Kernels verbessern wird, beispielsweise die Funktion printk(). Darüber hinaus erinnerte sich Linus daran, dass Intel vor einigen Jahrzehnten versucht hatte, ihn davon zu überzeugen, dass Itanium-Prozessoren die Zukunft seien, aber er antwortete: „Nein, das wird nicht passieren, da es dafür keine Entwicklungsplattform gibt.“ ARM macht alles richtig.“

Ein weiteres Problem, auf das Torvalds hinwies, ist die Inkonsistenz bei der Produktion von ARM-Prozessoren: „verrückte Hardware-Unternehmen aus dem Wilden Westen, die spezialisierte Chips für verschiedene Aufgaben herstellen.“ Er fügte hinzu: „Es war ein großes Problem, als die ersten Prozessoren auf den Markt kamen. Heute gibt es genügend Standards, um die Portierung von Kernen auf neue ARM-Prozessoren einfach zu machen.“

Darüber hinaus können wir die Veröffentlichung der ersten Implementierung des Rust-e1000-Treibers für Intel-Ethernet-Adapter zur Kenntnis nehmen, die teilweise in Rust geschrieben wurde. Der Code verfügt immer noch über einen direkten Aufruf einiger C-Bindungen, es wird jedoch schrittweise daran gearbeitet, diese zu ersetzen und Rust-Abstraktionen hinzuzufügen, die zum Schreiben von Netzwerktreibern (für den Zugriff auf PCI-, DMA- und Kernel-Netzwerk-APIs) erforderlich sind. In seiner aktuellen Form besteht der Treiber den Ping-Test beim Start in QEMU erfolgreich, funktioniert aber noch nicht mit echter Hardware.

Source: opennet.ru

Kommentar hinzufügen