Android: Google zeigt ersten Linux-Treiber in Rust

Binder ist der wohl wichtigste Linux-Kernel-Treiber für das Android-Projekt. Google hat diesen auf Rust portiert.

Artikel veröffentlicht am ,
Das inoffizielle Maskottchen der Rust-Community ist eine Krabbe namens Ferris.
Das inoffizielle Maskottchen der Rust-Community ist eine Krabbe namens Ferris. (Bild: Pixabay)

Google hat erstmals einen kompletten und wichtigen Treiber für den Linux-Kernel vorgestellt, der in Rust statt dem bisher üblichen C geschrieben ist. Das kündigt die dafür zuständige Entwicklerin Alice Ryhl auf der Linux-Kernel-Mailing-Liste an. Ryhl ist Teil des Security und Privacy Teams für Android bei Google und dort speziell mit Rust für Linux betreut, verantwortet allerdings auch Rust-Projekt Tokio mit. Bereits vor rund einem Jahr hat Google das Ziel ausgegeben, Rust-Treiber für Linux zu erstellen.

Bei dem nun vorgestellten Treiber handelt es sich um eine Reimplementierung der Interprozesskommunikation (IPC) Binder, die bisher ausschließlich in Android genutzt wird. Die Technik ist dabei eng mit der Entstehung von Android selbst verbunden und inzwischen mehr als 15 Jahre alt. Auch wenn es viel Kritik an dem Code gab und über mehrere Jahre auch an alternativen Idee gearbeitet worden ist, hat Linux-Chefentwickler Linus Torvalds den Code dazu letztlich schlicht aus reinem Pragmatismus in den Hauptzweig eingepflegt, wie aus der damaligen Diskussion hervorgeht.

Google selbst ist aber immer noch unzufrieden mit dem Code, wie Ryhl nun schreibt und sieht zahlreiche Probleme damit. So sei die bisherige Umsetzung auch aufgrund der gewünschten Funktionalität extrem komplex und biete viele Möglichkeiten zur Verbesserung wie etwa eine rund tausend Zeilen umfassende Funktion. Auch sei Binder für die Sicherheit von Android wichtig, da viele Sandbox-Prozesse direkt auf Binder zugreifen.

Der neue Rust-Code von Binder will nicht nur damit aufräumen, sondern soll auch direkt einige der sowieso schon vorgesehenen Pläne für den Treiber umsetzen. Die Nutzung von Rust verhindere dabei typische Probleme aus C und das Typsystem helfe im Umgang mit verschiedenen Pointern. Auch der Umgang mit Fehlern sei unter Rust besser. Laut Ryhl wird für die Rust-Umsetzung die Struktur von Binder komplett neu gedacht, an der Funktionalität selbst ändere sich aber nichts und die dazu durchgeführten Tests liefen erfolgreich, auch auf einem Pixel 6 Pro.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Drohendes Einfuhrverbot
Apple stoppt Verkauf von Apple Watch Series 9 und Ultra 2

Apple kommt in den USA den Behörden zuvor und nimmt die Apple Watch Series 9 und Ultra 2 aus dem Handel. Hintergrund sind Patentstreitigkeiten.

Drohendes Einfuhrverbot: Apple stoppt Verkauf von Apple Watch Series 9 und Ultra 2
Artikel
  1. Leasing: Günstige E-Fahrzeuge für Geringverdiener in Frankreich
    Leasing
    Günstige E-Fahrzeuge für Geringverdiener in Frankreich

    Frankreich macht mit einem neuen Leasingprogramm einen Schritt in Richtung Elektroautos für untere Einkommensgruppen.

  2. Whistleblower: Ehemaliger US-Konteradmiral äußert sich zu Außerirdischen
    Whistleblower
    Ehemaliger US-Konteradmiral äußert sich zu Außerirdischen

    Wieder hat sich in den USA ein ehemals hochrangiger Militär und Beamter über Kontakte mit Aliens geäußert.

  3. Pole to Pole: Expedition mit Elektrofahrzeug erreicht den Südpol
    Pole to Pole
    Expedition mit Elektrofahrzeug erreicht den Südpol

    Nach rund 30.000 Kilometern quer durch Amerika und die Antarktis hat eine Elektroauto-Expedition den Südpol erreicht.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    • Daily Deals • Nur bis 9 Uhr: Magic Midnight Deals bei MediaMarkt • Last-Minute-Angebote bei Amazon • Avatar & The Crew Motorfest bis -50% • Xbox Series X 399€ • Cherry MX Board 3.0 S 49,95€ • Crucial MX500 2 TB 110,90€ • AVM FRITZ!Box 7590 AX + FRITZ!DECT 500 219€ [Werbung]
    •  /