Das Windows-Subsystem für Linux[1] bzw. im englischen Originaltitel Windows Subsystem for Linux, kurz WSL, ist eine in Windows 10 und Nachfolgeversionen integrierte Kompatibilitätsschicht zum Ausführen von Linux-Executables im ELF-Format. Microsoft und Canonical gingen hierzu eine Partnerschaft zu dem Zweck ein, in Windows ein Ubuntu-Image (ursprünglich 14.04 „Trusty Tahr“) herunterladen und installieren zu können. Die in diesem Image enthaltenen Anwendungen können mit WSL – im Gegensatz zum Vorgänger Windows Services for UNIX (SFU) – nativ unter Windows ausgeführt werden.[2][3][4] Show
WSL 1 beinhaltet eine Linux-kompatible Kernelschnittstelle, die von Microsoft entwickelt worden ist, die selbst aber keinen Code des Linux-Kernels enthält. Von Ubuntu bereitgestellte ausführbare Dateien laufen im User Mode darauf.[5] Der Nachfolger WSL 2 setzt stattdessen auf einen Virtualisierungsansatz mittels Hyper-V. Dies bietet neben einer besseren Performance auch eine vollständige Kompatibilität von Systemaufrufen, da hier ein vollständiger Linux-Kernel zum Einsatz kommt.[6] Dies bringt allerdings die üblichen Nachteile eines Typ1-Hypervisors mit sich. Zum einen die Tatsache, dass das Host-Betriebssystem anschließend selbst virtualisiert läuft (erhöhte Latenzzeiten könnten z. B. Echtzeitanwendungen beeinträchtigen).[7] Zum anderen kann es Probleme geben, anschließend andere Virtualisierungsprodukte parallel zu betreiben.[8] WSL 1[Bearbeiten | Quelltext bearbeiten]Das WSL-1-Subsystem führt nicht alle Linux-Programme aus, davon betroffen sind insbesondere solche, die eine grafische Benutzeroberfläche (GUI) voraussetzen oder Kernelfunktionen nutzen, die von der WSL-Kernelschnittstelle nicht implementiert worden sind.[9] GUI-Programme können aber einen externen X-Server wie beispielsweise VcXsrv oder Xming verwenden.[10] WSL benutzt weniger Ressourcen als eine komplette virtuelle Maschine und dürfte der direkteste Weg sein, Linux-Software auf einem Windows-System laufen lassen zu können. Linux- und Windows-Anwendungen können so beispielsweise in einem Skript nacheinander an den gleichen Dateien Manipulationen vornehmen.[11] Das Subsystem hat seinen Ursprung im nicht freigegebenen „Project Astoria“, das Android-Anwendungen auf Windows 10 Mobile ermöglichen sollte.[9] WSL wurde mit Windows 10 Insider Preview Build 14316 veröffentlicht.[12] Windows Subsystem for Linux ist nur auf 64-bit-Versionen von Windows 10 und Nachfolgeversionen verfügbar[11] und kann seit Windows 10 Anniversary Update und neueren Versionen aktiviert werden. In einem Geschwindigkeitsvergleich mit Windows 10 und nativen Versionen von Ubuntu, Suse, Debian und Intel Clear Linux fanden sich die WSL-Varianten nur wenig hinter den Besten.[13] Dies wurde für das zukünftige Windows 10-2004 dev 20008 in allen Modi in Relation zu den originalen Linux-Versionen nochmal erheblich verbessert.[14] WSL 2[Bearbeiten | Quelltext bearbeiten]Das neue, mit Windows 10 Insider-Preview Build 18917 Mitte 2019 vorgestellte komplett überarbeitete Subsystem bietet gegenüber WSL 1 wesentliche Vorteile. Neben der hinzugekommenen Unterstützung für Linux-Docker-Images nutzt WSL 2 nun eine Lightweight utility VM getaufte Virtuelle Maschine, die einen einzigen Linux-Kernel nutzt, unter dem dann die einzelnen Linux-Instanzen im User Mode aufsetzen. Der Kernel selbst wird im Rahmen des Windows-10-Update regelmäßig aktualisiert.[15] Mit der neuen VM wurde WSL nicht nur schneller, die Technik startet den Linux-Kernel auch viel schneller, spart zudem Arbeitsspeicher, weil immer nur ein einziger Kernel geladen ist, egal wie viele virtualisierte Linux-Systeme gerade laufen, und wird automatisch wieder deaktiviert, sobald es nicht mehr benötigt wird.[16][17] WSL 2 ist auf Windows 10 ab Version 1903 verfügbar.[18] Microsoft entwickelt für WSL 2 Treiber und APIs für OpenGL, OpenCL, CUDA, Vulkan für gute Performance in Verbindung mit der Grafikkarte und dessen Windows-10-Treibern. d3d12 wird als Mesa-3D-Treiber für OpenGL und OpenCL zu der Direct3D 12-API entwickelt. In Mesa 3D 21.0 im Januar 2021 steht OpenGL 3.3 in d3d12 in Mesa zur Verfügung. OpenCL 1.2 ist ebenfalls ein Ziel in d3d12. OpenGL ES 3.1 wird ab Mesa 22.0 mit Windows 10 21H2 unterstützt. Mit Mesa 22.1 wird OpenGL 4.2+ unterstützt. Aktueller Status der Entwicklung kann in Mesamatrix eingesehen werden.[19][20] In Windows 10 21H1 und 21H2 sind hier signifikante Verbesserungen zu erwarten.[21][22][23][24][25] GUI App Support in WSL2[Bearbeiten | Quelltext bearbeiten]GUI App Support With Windows Subsystem For Linux (WSLg) wird in Version 21H1 als Preview verfügbar sein. Microsoft stellt damit ein eigenes GUI zur Verfügung. Mesa 21.x ist dafür Voraussetzung im dazugehörigen Linux.[26][27] Ähnliche Software[Bearbeiten | Quelltext bearbeiten]
Weblinks[Bearbeiten | Quelltext bearbeiten]
Einzelnachweise[Bearbeiten | Quelltext bearbeiten]
Wie startet man WSL?Windows 10: WSL starten
Um auf WSL zuzugreifen, haben Sie mehrere Möglichkeiten: a) Sie suchen im Windows-Store nach "Ubuntu", klicken auf den Treffer und wählen "Starten". Das ist nach der Installation praktikabel, danach zu umständlich. b) Sie klicken im Startmenü auf den neuen Eintrag oben links: "Ubuntu 20.04 LTS".
Wie installiere ich WSL?Wenn Sie zusätzliche Verteilungen über eine Linux-/Bash-Befehlszeile (statt mit PowerShell oder über eine Eingabeaufforderung) installieren möchten, müssen Sie „.exe“ im Befehl wsl.exe --install -d <Distribution Name> verwenden oder wsl.exe -l -o , um verfügbare Verteilungen aufzulisten.
Was macht WSL?WSL umfasst einen Session-Managerdienst im Benutzermodus zur Verwaltung der Linux-Instanz, minimierte Pico-Prozesse zum Durchführen von Linux-Systemaufrufen und Pico-Treiber für das Emulieren des Linux-Kernels.
Wo ist WSL gespeichert?WSL bindet die Festplattenlaufwerke Ihres Computers unter dem Ordner /mnt/<drive> in Ihre Linux-Distributionen ein. Das Laufwerk C: wird beispielsweise unter /mnt/c/ eingebunden.
|