Microsoft je započeo testiranje podrške za pokretanje Linux GUI aplikacija na Windowsima

Microsoft je najavio početak testiranja mogućnosti pokretanja Linux aplikacija s grafičkim sučeljem u okruženjima temeljenim na WSL2 podsustavu (Windows Subsystem for Linux), dizajniranom za pokretanje Linux izvršnih datoteka na Windowsima. Aplikacije su u potpunosti integrirane s glavnom radnom površinom sustava Windows, uključujući podršku za postavljanje prečaca u izbornik Start, audio reprodukciju, snimanje mikrofona, OpenGL hardversko ubrzanje, prikaz informacija o programima na programskoj traci, prebacivanje između programa pomoću Alt-Tab, kopiranje podataka između Windowsa - i Linux programe putem međuspremnika.

Microsoft je započeo testiranje podrške za pokretanje Linux GUI aplikacija na Windowsima

Za organiziranje izlaza sučelja Linux aplikacije na glavnu Windows radnu površinu, koristi se RAIL-Shell kompozitni upravitelj koji je razvio Microsoft, koristeći Wayland protokol i temeljen na Weston bazi koda. Izlaz se izvodi pomoću pozadine RDP-RAIL (RDP Remote Application Integrated Locally), koja se razlikuje od pozadine RDP prethodno dostupne u Westonu po tome što kompozitni upravitelj ne renderira samu radnu površinu, već preusmjerava pojedinačne površine (wl_surface) preko RDP-a. RAIL kanal za prikaz na glavnoj radnoj površini sustava Windows. XWayland se koristi za pokretanje X11 aplikacija.

Microsoft je započeo testiranje podrške za pokretanje Linux GUI aplikacija na Windowsima

Audio izlaz je organiziran pomoću PulseAudio poslužitelja, koji također komunicira sa Windows-om koristeći RDP protokol (za audio izlaz se koristi dodatak rdp-sink, a za unos rdp-source plugin). Kompozitni poslužitelj, XWayland i PulseAudio upakirani su u obliku univerzalne mini distribucije pod nazivom WSLGd, koja uključuje komponente za apstrahiranje grafičkog i audio podsustava, a temelji se na CBL-Mariner Linux distribuciji, koja se također koristi u Microsoftovoj cloud infrastrukturi. . WSLGd radi pomoću mehanizama virtualizacije, a virtio-fs se koristi za dijeljenje pristupa između Linux gostujućeg okruženja i Windows glavnog sustava.

FreeRDP se koristi kao RDP poslužitelj pokrenut u WSLGd Linux okruženju, a mstsc djeluje kao RDP klijent na Windows strani. Za otkrivanje postojećih grafičkih Linux aplikacija i njihov prikaz u Windows izborniku, pripremljen je rukovatelj WSLDVCPlugin. Uz redovne distribucije Linuxa kao što su Ubuntu, Debian i CenOS instalirane u WSL2 okruženju, skup komponenti koje rade u WSLGd-u međusobno djeluju pružajući utičnice koje obrađuju zahtjeve koristeći protokole Wayland, X11 i PulseAudio. Vezovi pripremljeni za WSLGd distribuiraju se pod licencom MIT-a.

Instalacija WSLGd-a zahtijeva Windows 10 Insider Preview najmanje verziju 21362. Ubuduće će WSLGd biti dostupan za redovita izdanja Windowsa bez potrebe za sudjelovanjem u programu Insider Preview. Instalacija WSLGd-a provodi se izvršavanjem standardne naredbe “wsl —install”, na primjer, za Ubuntu - “wsl —install -d Ubuntu”. Za postojeća WSL2 okruženja, instaliranje WSLGd-a vrši se pomoću naredbe "wsl --update" (podržana su samo WSL2 okruženja koja koriste Linux kernel, a ne prijevod poziva). Grafičke aplikacije instaliraju se putem standardnog upravitelja paketa distribucije.

WSLGd pruža samo motore za izlaz 2D grafike, a za ubrzavanje 3D grafike temeljene na OpenGL-u, distribucije instalirane u WSL2 nude korištenje virtualnog GPU-a (vGPU). vGPU upravljački programi za WSL dostupni su za AMD, Intel i NVIDIA čipove. Grafičko ubrzanje osigurano je pružanjem sloja s implementacijom OpenGL-a preko DirectX-a 12. Sloj je dizajniran u obliku d3d12 drajvera, koji je uključen u glavni dio Mesa 21.0 i razvija se u suradnji s Collaborom.

Virtualni GPU implementiran je u Linuxu pomoću /dev/dxg uređaja s uslugama koje repliciraju WDDM (Windows Display Driver Model) D3DKMT Windows kernela. Upravljački program uspostavlja vezu s fizičkim GPU-om pomoću VM sabirnice. Linux aplikacije imaju istu razinu GPU pristupa kao izvorne Windows aplikacije, bez potrebe za dijeljenjem resursa između Windowsa i Linuxa. Testiranje performansi na Surface Book Gen3 uređaju s Intel GPU-om pokazalo je da u izvornom Win32 okruženju Geeks3D GpuTest test pokazuje 19 FPS, u Linux okruženju s vGPU-om - 18 FPS, a sa softverskim renderiranjem u Mesa - 1 FPS.



Izvor: opennet.ru

Dodajte komentar