Microsoft kunngjorde noen dager siden begynnelsen på å teste evnen til å kjøre Linux-baserte GUI-applikasjoner i WSL2-baserte miljøer (Windows Subsystem for Linux).
Applikasjoner er fullt integrert med hovedvinduet på Windows, inkludert støtte for å plassere snarveier på Start-menyen, spille av lyd, spille inn fra en mikrofon, OpenGL-maskinvareakselerasjon, vise informasjon om programmer på oppgavelinjen, bytte mellom programmer ved hjelp av Alt-Tab, kopiere data mellom Windows og Linux programmer via utklippstavlen.
For å organisere utdataene fra Linux-applikasjonsgrensesnittet til hovedvinduet på skrivebordet, RAIL-Shell komposittmanageren brukes utviklet av Microsoft, Den bruker Wayland-protokollen og er basert på Weston-kodebasen.
Gjengivelsen utføres ved hjelp av RDP Remote Application Integrated Locally (RDP Remote Application Integrated Locally) backend, som skiller seg fra RDP-backend som tidligere var tilgjengelig fra Weston ved at komposittmanageren ikke gjengir selve skrivebordet, men i stedet omdirigerer de enkelte overflatene ( wl_surface) via RDP RAIL-kanalen for å vises på ditt viktigste Windows-skrivebord. XWayland brukes til å kjøre X11-applikasjoner.
Lydutgangen er organisert av PulseAudio-serveren, som også samhandler med Windows ved hjelp av RDP-protokollen (plugin for rdp-sink brukes til lydutgang og rdp-kilde for input).
Composite Server, XWayland og PulseAudio er pakket i form av en universell mini-distribusjon WSLGd, som inkluderer komponenter for abstraksjon av grafikk- og lydundersystemet, og er basert på CBL-Mariner Linux-distribusjon, også brukt i Microsoft skyinfrastruktur. ... WSLGd startes ved bruk av virtualiseringsmekanismer og virtio-fs brukes til deling mellom Linux-gjesten og Windows-verten.
FreeRDP brukes som RDP-server lansert i WSLGd Linux-miljøet, og mstsc fungerer som RDP-klient på Windows-siden. WSLDVCPlugin-driveren er forberedt på å identifisere tilgjengelige grafiske Linux-applikasjoner og vise dem i Windows-menyen. Med vanlige Linux-distribusjoner installert i WSL2-miljøet, som Ubuntu, Debian og CenOS, samhandler WSLGd-settet med komponenter ved å tilby stikkontakter som håndterer forespørsler fra Wayland, X11 og PulseAudio.
Den virtuelle GPU er implementert på Linux ved hjelp av / dev / dxg-enheten med tjenester som etterligner Windows Display Driver Model (WDDM) D3DKMT av Windows-kjernen.
Kontrolleren organiserer forbindelsen til den fysiske GPUen gjennom VM-bussen, pluss Linux-applikasjoner har samme nivå av GPU-tilgang som innfødte Windows-applikasjoner uten å tvinge ressursdeling mellom Windows og Linux.
Ytelsestester på en Surface Book Gen3-enhet med en Intel GPU viste at Geeks32D GpuTest-referansen i et innfødt Win3-miljø demonstrerer 19 FPS, i et Linux-miljø med vGPU - 18 FPS og med gjengivelse av programvare på Mesa - 1 FPS.
WSLGd-installasjonen krever Windows 10 Insider Preview minst versjon 21362, selv om eI fremtiden vil muligheten til å installere WSLGd gis for vanlige utgaver Windows, uten behov for å delta i Insider Preview-programmet.
WSLGd gir bare mekanismer for gjengivelse av 2D-grafikk, og for å akselerere OpenGL-basert 3D-grafikk på distribusjoner installert på WSL2, foreslås det å bruke en virtuell GPU (vGPU).
Grafikkakselerasjon er gitt ved å tilveiebringe et lag med implementeringen av OpenGL over DirectX 12. Laget er designet i form av d3d12-driveren, som ble inkludert i hoveddelen av Mesa 21.0 og utvikles i samarbeid med Collabora.
WSLGd-installasjon utføres ved å kjøre den typiske kommandoen "wsl –install", for eksempel for Ubuntu - "wsl –install -d Ubuntu".
For eksisterende WSL2-miljøer installeres WSLGd ved hjelp av kommandoen "wsl –update" (bare WSL2-miljøer som bruker Linux-kjernen støttes, ikke oversettelse av anrop). De grafiske applikasjonene installeres gjennom den vanlige pakkebehandleren til distribusjonssettet.
Fuente: https://devblogs.microsoft.com/
Tilsynelatende er Linux veldig ubehagelig for visse mennesker eller selskaper. Etter det jeg ser er poenget å få Linux ut av veien.