Im Linux-Kernel 6.8 ist die Aufnahme des ersten Netzwerk-Treibers in Rust geplant.

In den net-next-Branch, in dem die Änderungen für den Linux-Kernel 6.8 entwickelt werden, wurden Änderungen aufgenommen, die eine anfängliche Rust-Bindung über der Abstraktionsschicht von phylib in den Kernel integrieren. Diese Bindung wird vom Treiber ax88796b_rust verwendet, der die Unterstützung für die PHY-Schnittstelle des Ethernet-Controllers Asix AX88772A (100MBit) gewährleistet. Der Treiber umfasst 135 Zeilen Code und ist als einfaches Arbeitsbeispiel für die Erstellung von Netzwerktreibern in Rust konzipiert, bereit für den Einsatz mit echter Hardware.

In Bezug auf die Funktionalität ist der Rust-Treiber vollständig äquivalent zum alten Treiber ax88796b, der in C geschrieben ist, und kann mit den Netzwerkkarten X-Surf 100, die mit dem Chip AX88796B ausgestattet sind, verwendet werden. Beide Treiber, der in C und der in Rust, werden koexistieren im Kernel und können je nach Vorliebe der Nutzer aktiviert werden. Für die Aktivierung des Rust-Treibers ist in Kconfig die Einstellung AX88796B_RUST_PHY vorgesehen; zusammen mit dieser muss auch die Rust-Bindung über phylib mit dem Parameter RUST_PHYLIB_ABSTRACTIONS aktiviert werden.

Außerdem wurde ein Ethernet-Treiber für Realtek Generic FE-GE in Rust entwickelt, der derzeit noch nicht in den Kernel aufgenommen wurde. Zuvor wurde auch ein Prototyp des rust-e1000 Treibers für Intel Ethernet-Adapter, neu geschrieben in Rust, präsentiert.

Quelle: opennet.ru

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster