Microsoft hà cuminciatu à pruvà supportu per l'esecuzione di applicazioni GUI Linux in Windows

Microsoft hà annunziatu l'iniziu di a prova di a capacità di eseguisce l'applicazioni Linux cù una interfaccia grafica in ambienti basati nantu à u sottosistema WSL2 (Windows Subsystem for Linux), cuncepitu per eseguisce i fugliali eseguibili Linux in Windows. L'applicazioni sò integrate cumplettamente cù u desktop principale di Windows, cumpresu u supportu per a piazza di accurtatoghji in u menu Start, u sonu, a registrazione da un microfonu, l'accelerazione hardware OpenGL, a visualizazione di l'infurmazioni nantu à i prugrammi in a barra di attività, u cambiamentu trà i prugrammi cù Alt-Tab, a copia di dati. trà Windows - è Linux-programmi attraversu u clipboard.

Microsoft hà cuminciatu à pruvà supportu per l'esecuzione di applicazioni GUI Linux in Windows

Per urganizà l'output di l'interfaccia di l'applicazione Linux à u desktop principale di Windows, u gestore compostu RAIL-Shell sviluppatu da Microsoft hè utilizatu, chì usa u protocolu Wayland è hè basatu annantu à a basa di codice Weston. L'output hè realizatu utilizendu u backend RDP-RAIL (RDP Remote Application Integrated Locally), chì difiere da u backend RDP precedentemente dispunibule in Weston in chì u gestore compostu ùn disegna micca u desktop stessu, ma redirige superfici individuali (wl_surface) via u Canale RDP RAIL per a visualizazione nantu à u desktop principale di Windows. Per eseguisce l'applicazioni X11, XWayland hè utilizatu.

Microsoft hà cuminciatu à pruvà supportu per l'esecuzione di applicazioni GUI Linux in Windows

L'output audio hè urganizatu cù u servitore PulseAudio, chì interagisce ancu cù Windows utilizendu u protocolu RDP (u plugin rdp-sink hè utilizatu per l'output audio, è rdp-source hè utilizatu per input). Composite Server, XWayland, è PulseAudio sò imballati cum'è una mini-distribuzione universale WSLGd chì include cumpunenti per astrazione di gràfiche è sottosistemi audio è hè basatu annantu à a distribuzione CBL-Mariner Linux utilizata ancu in l'infrastruttura cloud Microsoft. WSLGd funziona aduprendu meccanismi di virtualizazione, è virtio-fs hè utilizatu per sparte trà l'ospiti Linux è l'ospite Windows.

FreeRDP hè adupratu cum'è u servitore RDP in esecuzione in l'ambiente Linux WSLGd, è mstsc hè u cliente RDP da u latu Windows. Per determinà l'applicazioni gràfiche Linux dispunibuli è vede in u menu di Windows, un gestore WSLDVCPlugin hè statu preparatu. Cù distribuzioni Linux cumuni installate in un ambiente WSL2, cum'è Ubuntu, Debian è CenOS, u settore di cumpunenti in esecuzione in WSLGd interagisce fornendu sockets chì gestiscenu e dumande nantu à i protokolli Wayland, X11 è PulseAudio. I vincoli preparati da WSLGd sò distribuiti sottu a licenza MIT.

L'installazione di WSLGd richiede almenu Windows 10 Insider Preview versione 21362. Avanzate, WSLGd serà dispunibule per l'edizioni regulare di Windows senza a necessità di participà à u prugramma Insider Preview. WSLGd hè stallatu cù u cumandimu tipicu wsl --install, per esempiu, per Ubuntu - "wsl --install -d Ubuntu". Per l'ambienti WSL2 esistenti, l'installazione di WSLGd hè fatta via u cumandimu "wsl --update" (solu l'ambienti WSL2 chì utilizanu u kernel Linux, micca a traduzzione di chjamate, sò supportati). L'applicazioni grafiche sò stallate attraversu u gestore di pacchetti regulare di a distribuzione.

WSLGd furnisce solu meccanismi per renderà gràfiche 2D, è per accelerà gràfiche 3D basate in OpenGL, e distribuzioni installate in WSL2 suggerenu di utilizà una GPU virtuale (vGPU). I driver vGPU per WSL sò furniti per i chip AMD, Intel è NVIDIA. L'accelerazione gràfica hè furnita da a pruvisione di una capa cù l'implementazione di OpenGL nantu à DirectX 12. A capa hè designata cum'è u driver d3d12, chì hè inclusu in a cumpusizioni principale di Mesa 21.0 è sviluppatu in cunghjunzione cù Collabora.

A GPU virtuale hè implementata in Linux utilizendu u dispositivu /dev/dxg cù servizii chì imitanu u WDDM (Windows Display Driver Model) D3DKMT di u kernel di Windows. U driver stabilisce una cunnessione à a GPU fisica cù u bus VM. L'applicazioni Linux anu u listessu livellu di accessu GPU cum'è l'applicazioni native Windows, senza l'usu di spartera di risorse trà Windows è Linux. A prova di rendiment nantu à un dispositivu Surface Book Gen3 cù una GPU Intel hà dimustratu chì in un ambiente Win32 nativu, u Geeks3D GpuTest mostra 19 FPS, in un ambiente Linux cun vGPU - 18 FPS, è cun rendering di software in Mesa - 1 FPS.



Source: opennet.ru

Add a comment