• IT-Karriere:
  • Services:

Subsystem für Linux: Microsoft entschlackt den Kernel für Ubuntu on Windows

Damit die Bash und der Ubuntu-Userspace auf Windows 10 laufen, hat Microsoft seinen Kernel mit sogenannten Pico-Prozessen deutlich entschlackt. Außerdem nutzt das Subsystem für Linux zwei neue Dateisysteme, wie das Unternehmen erklärt.

Artikel veröffentlicht am ,
Das WSL nutzt wenig bekannte Funktionen des Windows-Kernels.
Das WSL nutzt wenig bekannte Funktionen des Windows-Kernels. (Bild: Andreas Sebayang/Golem.de)

Bisher waren kaum technische Details zu Windows Subsystem für Linux (WSL) bekannt, das Microsoft nutzt, um die Bash und den Ubuntu-Userspace unverändert auf Windows 10 laufen zu lassen. Das Unternehmen will das mit einer Artikelserie nun ändern und erklärt zu Beginn die grundlegenden Konzepte für das WSL, wozu sogenannte Pico-Prozesse gehören sowie neue Treiber und Dateisysteme.

Isolierte Prozesse und beschränkte Kernel-API

Stellenmarkt
  1. Fraunhofer-Institut für Optronik, Systemtechnik und Bildauswertung IOSB, Karlsruhe
  2. Stiftung Hospital zum heiligen Geist, Frankfurt am Main

Die Pico-Prozesse sind aus dem Forschungsprojekt Drawbridge hervorgegangen, dessen Konzepte nun unter anderem als Sandbox-Lösung in Microsofts Cloud-Dienst Azure verwendet werden. Die Pico-Prozesse verzichten dabei auf die Nutzung und Bereitstellung sämtlicher unter Windows sonst üblichen Traps für andere Betriebssystem-Dienste, die typischerweise vom Win32-Subsystem bereitgestellt werden.

  • Schematischer Aufbau des WSL (Bild: Microsoft)
  • Ein Pico-Prozess auf dem NT-Kernel (Bild: Microsoft)
  • Ein Pico-Prozess, der Windows-Dienste enthält. Im WSL wird darauf jedoch verzichtet. (Bild: Microsoft)
Schematischer Aufbau des WSL (Bild: Microsoft)

Das heißt, Pico-Prozesse laufen direkt auf dem vergleichsweise kleinen NT-Kernel und bekommen zudem einen isolierten Adressraum zugewiesen. Darüber hinaus können diese Prozesse nur festgelegte Systemaufrufe (Syscalls) nutzen, die im Fall des WSL von einem mit dem Prozess assoziierten Treiber verarbeitet werden.

Die zum WSL gehörenden Windows-Kernel-Treiber Lxcore und Lxss werden genutzt, um die Linux-Kernel-API zu emulieren. Sofern möglich, übersetzt der Lxcore-Treiber einen Linux-Syscall dann in einen entsprechenden Windows-Syscall. Gibt es keine solche Entsprechung, muss der Lxcore-Treiber den Syscall selbst ausführen.

Golem Akademie
  1. Microsoft 365 Security Workshop
    9.-11. Juni 2021, Online
  2. Einführung in die Programmierung mit Rust
    21.-24. September 2021, online
Weitere IT-Trainings

Anwendungen des Ubuntu-Userspace im WSL werden als Pico-Prozesse ausgeführt. Verwaltet wird dies von einem speziellen Windows-Dienst in Zusammenarbeit mit den Kernel-Treiber. Sämtliche Prozesse, Threads und Laufzeitdaten einer solchen Instanz werden dazu in einer gemeinsamen Datenstruktur im Arbeitsspeicher repräsentiert. Sobald der Windows-Dienst beendet wird, werden auch sämtliche Prozesse der laufenden Instanz, also die Ubuntu-Anwendungen, beendet.

Zwei neue Dateisysteme

Damit die vom Linux-Kernel unterstützten Optionen für Dateisysteme auch auf dem WSL genutzt werden, hat Microsoft das VolFS erstellt. Dieses unterstützt Berechtigungen, die per chmod geändert werden können, symbolische Verknüpfungen, Dateinamen mit Zeichen, die unter Windows eigentlich nicht genutzt werden können, sowie Case Sensitivity, also die strikte Unterscheidung von Groß- und Kleinschreibung. Die Ordner des Ubuntu-Systems sowie Home-Verzeichnisse nutzen VolFS.

Für die Interoperabilität mit dem Windows-System existiert das Dateisystem DriveFS. Dateinamen müssen hier wie in Windows gestaltet sein, Case Sensitivity wird nicht unterstützt ebenso wie einige weitere Funktionen, die in Linux-Dateisystemen bereitstehen. DriveFS wird zum Einhängen der Windows-Festplatten genutzt.

Microsoft will künftig noch weitere technische Details zu dem WSL bekanntgeben.

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


Anzeige
Top-Angebote
  1. (u. a. Northgard für 7,99€, No Man's Sky für 14,99€, PSN Card 20 Euro [DE] - Playstation...
  2. (u. a. 1m 8K HDMI 2.1 Ultra High Speed 48G 4K@120Hz/8K@60Hz + 1m Cat 8 Netzwerkkabel für 17,90€)
  3. 679€ (inkl. 60€-Rabatt + 60€-Gutschein - Release: 01.06.)

emarci 13. Aug 2016

Das wird oft missverstanden. Es geht nicht darum etwas billiger zu machen. Das eine hat...

smurfy 27. Apr 2016

Ja, Windows hat nun also dahingehend aufgeholt, was seit Jahrzehnten unter Unix/Linux...

t_e_e_k 26. Apr 2016

Es dürfte sich tatsächlich um Wrapper handeln. Dieser wird die System Pfade umleiten, die...


Folgen Sie uns
       


Programm für IT-Jobeinstieg: Hoffen auf den Klebeeffekt
Programm für IT-Jobeinstieg
Hoffen auf den Klebeeffekt

Aktuell ist der Jobeinstieg für junge Ingenieure und Informatiker schwer. Um ihnen zu helfen, hat das Land Baden-Württemberg eine interessante Idee: Es macht sich selbst zur Zeitarbeitsfirma.
Ein Bericht von Peter Ilg

  1. Arbeitszeit Das Sechs-Stunden-Experiment bei Sipgate
  2. Neuorientierung im IT-Job Endlich mal machen!
  3. IT-Unternehmen Die richtige Software für ein Projekt finden

Weclapp-CTO Ertan Özdil: Wir dürfen nicht in Schönheit und Perfektion untergehen!
Weclapp-CTO Ertan Özdil
"Wir dürfen nicht in Schönheit und Perfektion untergehen!"

Der CTO von Weclapp träumt von smarter Software, die menschliches Eingreifen in der nächsten ERP-Generation reduziert. Deutschen Perfektionismus hält Ertan Özdil aber für gefährlich.
Ein Interview von Maja Hoock


    Fiat 500 als E-Auto im Test: Kleinstwagen mit großem Potenzial
    Fiat 500 als E-Auto im Test
    Kleinstwagen mit großem Potenzial

    Fiat hat einen neuen 500er entwickelt. Der Kleine fährt elektrisch - und zwar richtig gut.
    Ein Test von Peter Ilg

    1. Vierradlenkung Elektrischer GMC Hummer SUV fährt im Krabbengang seitwärts
    2. MG Cyberster MG B Roadster mit Lasergürtel und Union Jack
    3. Elektroauto E-Auto-Prämie übersteigt in 2021 schon Vorjahressumme

      •  /