A Microsoft megkezdte a Linux GUI-alkalmazások Windows rendszeren való futtatásának támogatásának tesztelését

A Microsoft bejelentette, hogy elkezdi tesztelni a Linux-alkalmazások grafikus felülettel történő futtatását a WSL2 alrendszeren (Windows Subsystem for Linux) alapuló környezetekben, amelyeket Linux futtatható fájlok futtatására terveztek Windows rendszeren. Az alkalmazások teljes mértékben integrálva vannak a fő Windows asztallal, beleértve a parancsikonok elhelyezését a Start menüben, a hanglejátszást, a mikrofonfelvételt, az OpenGL hardveres gyorsítást, a programokkal kapcsolatos információk megjelenítését a tálcán, a programok közötti váltást az Alt-Tab használatával, az adatok másolását a Windows között. - és Linux programok a vágólapon keresztül.

A Microsoft megkezdte a Linux GUI-alkalmazások Windows rendszeren való futtatásának támogatásának tesztelését

A Linux-alkalmazási felület kimenetének a Windows fő asztalra történő szervezéséhez a Microsoft által kifejlesztett RAIL-Shell kompozit menedzser, a Wayland protokoll használatával és a Weston kódbázison alapul. A kimenet az RDP-RAIL (RDP Remote Application Integrated Locally) háttérrendszerrel történik, amely abban különbözik a Westonban korábban elérhető RDP háttértől, hogy az összetett menedzser nem magát az asztalt rendereli, hanem átirányítja az egyes felületeket (wl_surface) az RDP-n keresztül. RAIL csatorna a fő Windows asztalon való megjelenítéshez. Az XWayland az X11 alkalmazások futtatására szolgál.

A Microsoft megkezdte a Linux GUI-alkalmazások Windows rendszeren való futtatásának támogatásának tesztelését

A hangkimenetet a PulseAudio szerver szervezi, amely szintén az RDP protokoll segítségével kommunikál a Windows rendszerrel (az rdp-sink bővítmény hangkimenetre, az rdp-source bővítmény pedig bemenetre szolgál). A kompozit szerver, az XWayland és a PulseAudio egy WSLGd nevű univerzális mini-disztribúcióba van csomagolva, amely a grafikus és audio alrendszerek absztraháló komponenseit tartalmazza, és a Microsoft felhő infrastruktúrájában is használt CBL-Mariner Linux disztribúción alapul. . A WSLGd virtualizációs mechanizmusokkal fut, a virtio-fs pedig a Linux vendégkörnyezet és a Windows hosztrendszer közötti hozzáférés megosztására szolgál.

A FreeRDP-t a WSLGd Linux környezetben elindított RDP-kiszolgálóként használják, az mstsc pedig RDP-kliensként működik a Windows oldalon. A meglévő grafikus Linux-alkalmazások észleléséhez és a Windows menüben való megjelenítéséhez egy WSLDVCPlugin-kezelő készült. A WSL2-környezetbe telepített szokásos Linux-disztribúciókkal, mint például az Ubuntu, Debian és CenOS, a WSLGd-ben futó összetevők kölcsönhatásba lépnek egymással, és olyan socketeket biztosítanak, amelyek a Wayland, X11 és PulseAudio protokollok használatával kezelik a kéréseket. A WSLGd-hez készített kötések az MIT licence alatt kerülnek terjesztésre.

A WSLGd telepítéséhez a Windows 10 Insider Preview legalább 21362-es verziója szükséges. A jövőben a WSLGd elérhető lesz a Windows szokásos kiadásaiban, anélkül, hogy részt kellene vennie az Insider Preview programban. A WSLGd telepítése a szabványos „wsl –install” parancs végrehajtásával történik, például Ubuntu esetén – „wsl –install -d Ubuntu”. Meglévő WSL2 környezetekben a WSLGd telepítése a "wsl --update" paranccsal történik (csak a Linux kernelt használó WSL2 környezetek támogatottak, és nem a hívásfordítás). A grafikus alkalmazások telepítése a disztribúció szabványos csomagkezelőjén keresztül történik.

A WSLGd csak motorokat biztosít a 2D grafikus kimenethez, és az OpenGL alapú 3D grafika felgyorsítása érdekében a WSL2-be telepített disztribúciók virtuális GPU (vGPU) használatát kínálják. A WSL vGPU-illesztőprogramjai az AMD, Intel és NVIDIA chipekhez vannak biztosítva. A grafikus gyorsítást az OpenGL DirectX 12 feletti implementációjával rendelkező réteg biztosítása biztosítja. A réteget a d3d12 illesztőprogram formájában tervezték, amely a Mesa 21.0 fő részében található, és a Collaborával közösen fejlesztik.

A virtuális GPU Linuxban a /dev/dxg eszközzel valósul meg, olyan szolgáltatásokkal, amelyek replikálják a Windows kernel WDDM (Windows Display Driver Model) D3DKMT-jét. Az illesztőprogram a virtuálisgép-busz segítségével kapcsolatot létesít a fizikai GPU-val. A Linux-alkalmazások ugyanolyan szintű GPU-hozzáféréssel rendelkeznek, mint a natív Windows-alkalmazások, anélkül, hogy erőforrás-megosztásra lenne szükségük a Windows és a Linux között. Az Intel GPU-val rendelkező Surface Book Gen3 eszközön végzett teljesítményteszt azt mutatta, hogy a natív Win32 környezetben a Geeks3D GpuTest teszt 19 FPS-t mutat, Linux környezetben vGPU-val - 18 FPS, és szoftveres megjelenítéssel Mesa - 1 FPS-sel.



Forrás: opennet.ru

Hozzászólás