Windows 11: Ein Vorgeschmack auf Rust für Developer im Insider-Programm

Was ist daraus geworden, Windows in Rust neu zu schreiben? Microsofts Verantwortlicher für Open-Source-Sicherheit gibt im Insider-Programm den Startschuss.

In Pocket speichern vorlesen Druckansicht 28 Kommentare lesen
Lesezeit: 4 Min.
Von
  • Silke Hahn
Inhaltsverzeichnis

Nicht nur das Linux-Projekt ist dabei, Rust im Linux-Kernel zu implementieren. Auch Microsoft erstellt Teile des Sourcecodes des Windows-Kernels neu in Rust – Grund dafür soll unter anderem die höhere Speichersicherheit der Programmiersprache gegenüber den C-Sprachen sein, der Schutz vor Pufferüberläufen (Buffer Overflow) und der einfachere Zugriff in der Speicherverwaltung.

Ferris Talks – die Kolumne für Rustaceans

Einige grundlegende Systembestandteile sollen bereits auf Rust portiert sein, und Windows 11 hat neben einer Grafikschnittstelle auch einen Systemaufruf (SysCall) in Rust erhalten. Developer, die an Microsofts Windows-Insider-Programm teilnehmen, können ab sofort einen ersten Vorgeschmack auf Rust erhalten.

Auf einer Konferenz in Tel Aviv (BlueHat IL) hatte der Open-Source-Verantwortliche von Microsoft David Weston unlängst mitgeteilt, wo das Projekt intern steht. Das Team sei dabei, interne C++-Datentypen in ihre Rust-Entsprechungen zu konvertieren. Die Renovierungsarbeiten sind seit 2020 in Gange, als Microsoft die Implementierung der Windows App SDK mit DWrite Core begann. Die DWrite Engine soll mittlerweile aus etwa 152.000 Zeilen Code in Rust und nur mehr 96.000 Zeilen in C++ bestehen.

Neben Sicherheitserwägungen sei auch die raschere Performance ein starkes Argument für den Wechsel zu Rust. So seien etwas die OpenType Library Services um fünf bis fünfzehn Prozent schneller als die bisherigen Tools. Das Windows Graphics Device Interface (Wind32 GDI) wird auf Rust portiert und soll bereits rund 36.000 Zeilen Rust-Code umfassen. Die aktuelle Version von Windows 11 bootet demzufolge mit der Rust-Version dieser Schnittstelle, allerdings soll der Rust-Port noch hinter einer Feature-Flag verborgen sein.

Empfohlener redaktioneller Inhalt

Mit Ihrer Zustimmmung wird hier ein externes YouTube-Video (Google Ireland Limited) geladen.

Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit können personenbezogene Daten an Drittplattformen (Google Ireland Limited) übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.

In seinem Vortrag erklärte Weston, dass es bereits einen Systemaufruf (SysCall) im Windows-Kernel gebe, der in Rust implementiert sei. Allerdings scheint es microsoftseitig auch klare Grenzen bei der Rust-Liebe zu geben. So gab sich Weston zurückhaltend bei Prognosen zum Zeitfenster und Ausmaß des Vorhabens: "Wir lieben Rust, aber wir brauchen parallel eine Strategie, um den nativen Code zu sichern." Mit dem finalen Umstieg von Windows auf Rust ist wohl nicht in der nächsten Zeit zu rechnen.

Open-Source-Entwickler hatten in verschiedenen Medien Einschätzungen abgegeben. So erklärte Armin Ronacher (der Kopf hinter Flask in Python) gegenüber The Register, dass er viel von Microsofts Rust-Engagement halte. Er geht davon aus, dass Microsoft den bestehenden Compiler recyceln werde und verspricht sich davon eine bessere Unterstützung für die Programmdatenbank PDB. Offenbar hinkt Windows aus Open-Source-Sicht beim Tooling für Entwickler hinter DWARF-basierten Plattformen her (Debugging with Attributed Record Formats).

Ferris Talk – Neuigkeiten zu Rust. Eine Kolumne für Rustaceans

Vielfach heißt es, dass sich die Welt im Bereich der Softwareentwicklung schneller ändert als in anderen Bereichen. Auch wenn das stimmen mag, sind fundamentale Umbrüche mit langfristiger Wirkung auch in der Informatik selten. Nicht jedes JavaScript-Framework stellt die Art, Software zu entwickeln, komplett auf den Kopf. Rust aber gehört zu den seltenen Änderungen, die nachhaltig, langfristig und unserer Einschätzung nach positiv wirken werden.

In dieser Kolumne möchten wir abwechselnd regelmäßig über Neuerungen und Hintergründe im Bereich Rust berichten. Sie soll Teams, die Rust schon verwenden, helfen, auf dem Laufenden zu bleiben. Einsteigerinnen und Einsteiger sollen durch die Kolumne tiefere Einblicke in die Funktionsweise von Rust erhalten.

Kolumnenautoren vom Rust Meetup Linz

Der Kolumnen-Titel nimmt Bezug auf Ferris, das krabbenförmige inoffizielle Maskottchen der Rust-Gemeinde. Die Ferris Talks schreiben Stropek und Baumgartner ab sofort monatlich und im Wechsel – mehr zu den Autoren steht am Ende des Artikels. Die beiden Kolumnisten sind überzeugte Rustaceans und organisieren das Rust Meetup Linz, die Fachtreffen werden in Videoform festgehalten und sind auf der Rust-Linz-Playliste bei YouTube abrufbar. Wer die beiden beruflich treffen möchte, kann sie unter anderem als Vortragende und als Workshop-Trainer bei der Rust-Konferenz 2021 von Heise erleben.

Rust gilt als einfacher zu warten und zu debuggen als C und C++, weshalb die laufenden Projekte von Linux und Microsoft unter Entwicklern starke Zustimmung finden. Bis es so weit ist, dass Windows komplett in Rust neu gefasst wurde, könnten allerdings noch Monate vergehen: David Weston sprach von "in den nächsten Wochen oder Monaten" und hielt sich mit genaueren Angaben bedeckt.

Dabei geht es nicht um Kosmetik, der Kernel ist die wesentliche Kernkomponente eines Betriebssystems. Wenn etwa Angreifer ihn kompromittieren, erhalten sie Kontrolle über das Gerät. Solche Angriffe sind nicht allein auf Windows beschränkt und können auf einem Mac, fallweise sogar unter Linux passieren – allerdings steht Windows als das verbreitetste Betriebssystem besonders im Fokus von Angreifern. Offenbar plant Microsoft, mit dem Wechsel von Windows 10 zu 11 tiefgreifend die Sicherheit des Betriebssystems zu erhöhen. Oder, in Westons Worten, "Default Security" einzurichten – perspektivisch durch den Wechsel von C++ zu Rust.

Siehe auch:

  • Rust Download schnell und sicher von heise.de

(sih)