Microsoft er begyndt at teste understøttelsen af at køre GUI-applikationer fra Linux i Windows

Microsoft har annonceret begyndelsen på testningen af muligheden for at køre Linux-applikationer med grafisk interface i miljøer baseret på WSL2 (Windows Subsystem for Linux), der er designet til at køre Linux-kørbare filer i Windows. Applikationerne integreres fuldstændigt med Windows-hovedskrivbordet, inklusive understøttelse af placering af genveje i Start-menuen, lydafspilning, mikrofonoptagelse, hardwareacceleration af OpenGL, visning af programinformation på proceslinjen, skift mellem programmer med Alt-Tab, samt kopiering af data mellem Windows- og Linux-programmer via udklipsholderen.

Microsoft er begyndt at teste understøttelsen af at køre GUI-applikationer fra Linux i Windows

For at organisere output af Linux-applikationernes interface til hovedskrivbordet i Windows benyttes Microsofts udviklede kompositmanager RAIL-Shell, som anvender Wayland-protokollen og er baseret på Weston-kodebasen. Output foregår ved hjælp af RDP-RAIL backend (RDP Remote Application Integrated Locally), som adskiller sig fra den tidligere tilgængelige RDP backend i Weston ved, at kompositmanageren ikke selv udfører tegningen af skrivebordet, men omdirigerer separate overflader (wl_surface) via RDP RAIL-kanalen til visning på Windows-hovedskrivbordet. For at køre X11-applikationer anvendes XWayland.

Microsoft er begyndt at teste understøttelsen af at køre GUI-applikationer fra Linux i Windows

Lydoutput er organiseret ved hjælp af server PulseAudio, der også interagerer med Windows via RDP-protokollen (til lydoutput anvendes rdp-sink-pluginet, og til input - rdp-source). Kompositserveren, XWayland og PulseAudio er pakket i form af en universel mini-distribution WSLGd, der inkluderer komponenter til at abstrahere den grafiske og lydmæssige subsystem, og som er baseret på CBL-Mariner Linux-distributionen, der også anvendes i Microsofts cloud-infrastruktur. WSLGd kører ved hjælp af virtualiseringsteknikker, og virtio-fs anvendes til deling mellem det gæste-miljø, der kører Linux, og værtsystemet Windows.

Som RDP-servere, der køres i et Linux-miljø WSLGd, anvendes FreeRDP, og på Windows-siden fungerer RDP-klienten som mstsc. For at identificere de tilgængelige grafiske Linux-applikationer og vise dem i Windows-menuen, er der forberedt en WSLDVCPlugin-behandler. Når almindelige Linux-distributioner som Ubuntu, Debian og CenOS er installeret i WSL2-miljøet, interagerer den kørende komponentpakke i WSLGd via socket-forbindelser, der håndterer anmodninger over protokollerne Wayland, X11 og PulseAudio. De forberedte bindings til WSLGd distribueres under MIT-licensen.

For at installere WSLGd kræves Windows 10 Insider Preview i det mindste version 21362. Senere vil muligheden for installation af WSLGd også blive tilbudt for almindelige versioner af Windows uden behov for at deltage i Insider Preview-programmet. Installation af WSLGd foretages ved at udføre den typiske kommando «wsl —install», for eksempel for Ubuntu — «wsl —install -d Ubuntu». For eksisterende WSL2-miljøer udføres installationen af WSLGd via kommandoen «wsl —update» (kun WSL2-miljøer, der anvender et Linux-kernel, understøttes, ikke opkaldstranslation). Grafiske applikationer installeres via den indbyggede pakkehåndterer i distributionen.

WSLGd leverer kun mekanismer til output af 2D-grafik, mens der til acceleration af 3D-grafik baseret på OpenGL i de installerede WSL2-distributioner anbefales at bruge en virtuel GPU (vGPU). vGPU-drivere til WSL er tilgængelige for AMD-, Intel- og NVIDIA-chips. Grafikaccelerationen sikres ved at tilbyde et lag med implementering af OpenGL over DirectX 12. Laget er udformet som en d3d12-driver, der er blevet en del af Mesa 21.0 og udvikles i samarbejde med Collabora.

Driften af den virtuelle GPU implementeres i Linux ved hjælp af enheden /dev/dxg med tjenester, der efterligner WDDM (Windows Display Driver Model) D3DKMT-kernen i Windows. Driveren organiserer forbindelsen til den fysiske GPU via VM bus. Linux-applikationer har samme adgangsniveau til GPU'en som native Windows-applikationer, uden at der anvendes ressourcedeling mellem Windows og Linux. Ydelsestests på enhedens Surface Book Gen3 med Intel GPU viste, at testen Geeks3D GpuTest i det native Win32-miljø viser 19 FPS, i Linux-miljøet med vGPU — 18 FPS, og ved software-rendering i Mesa — 1 FPS.

Afspil video


Kilde: opennet.ru
Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster