Microsoft объявила Несколько дней назад начало тестирования возможности запускать приложения с графическим интерфейсом на базе Linux в средах на основе WSL2 (Подсистема Windows для Linux).
Приложения полностью интегрированы с основным рабочим столом Windows, включая поддержку размещения ярлыков в меню Пуск, воспроизведение звука, запись с микрофона, аппаратное ускорение OpenGL, отображение информации о программах на панели задач, переключение между программами с помощью Alt-Tab, копирование данных между Windows и Linux программы через буфер обмена.
Чтобы организовать вывод интерфейса приложения Linux на основной рабочий стол Windows, используется композитный менеджер RAIL-Shell разработан Microsoft, Он использует протокол Wayland и основан на кодовой базе Weston.
Рендеринг выполняется с использованием бэкэнда удаленного приложения RDP, интегрированного локально (удаленное приложение RDP, интегрированного локально), которое отличается от бэкэнда RDP, ранее доступного от Weston тем, что составной менеджер не отображает сам рабочий стол, а вместо этого перенаправляет отдельные поверхности ( wl_surface) через канал RDP RAIL для отображения на главном рабочем столе Windows. XWayland используется для запуска приложений X11.
Вывод звука организован сервером PulseAudio, который также взаимодействует с Windows по протоколу RDP (плагин rdp -ink используется для вывода звука, а rdp-source - для ввода).
Composite Server, XWayland и PulseAudio упакованы в виде универсального мини-дистрибутива WSLGd, который включает компоненты для абстракции графической и звуковой подсистемы и основан на дистрибутиве CBL-Mariner Linux, также используемом в облачной инфраструктуре Microsoft. ... WSLGd запускается с использованием механизмов виртуализации, а virtio-fs используется для совместного использования гостевой системой Linux и хостом Windows.
FreeRDP используется как RDP-сервер, запускаемый в среде WSLGd Linux, а mstsc действует как RDP-клиент на стороне Windows. Драйвер WSLDVCPlugin был подготовлен для определения доступных графических приложений Linux и отображения их в меню Windows. С распространенными дистрибутивами Linux, установленными в среде WSL2, такими как Ubuntu, Debian и CenOS, набор компонентов WSLGd взаимодействует, предоставляя сокеты, которые обрабатывают запросы от Wayland, X11 и PulseAudio.
Виртуальный графический процессор реализован в Linux с использованием устройства / dev / dxg. со службами, имитирующими модель драйвера дисплея Windows (WDDM) D3DKMT ядра Windows.
Контроллер организует соединение с физическим графическим процессором через шину виртуальной машины, а приложения Linux имеют тот же уровень доступа к графическому процессору, что и собственные приложения Windows, без принудительного разделения ресурсов между Windows и Linux.
Тесты производительности на устройстве Surface Book Gen3 с графическим процессором Intel показали, что в нативной среде Win32 тест Geeks3D GpuTest показывает 19 FPS, в среде Linux с vGPU - 18 FPS и с программным рендерингом на Mesa - 1 FPS.
Установка WSLGd требуется Windows 10 Insider Preview как минимум версии 21362, Несмотря на то eВ будущем возможность установки WSLGd будет предоставлена для обычных выпусков. Windows, без необходимости участвовать в программе Insider Preview.
WSLGd предоставляет только механизмы для рендеринга 2D-графики, а для ускорения 3D-графики на основе OpenGL в дистрибутивах, установленных на WSL2, предлагается использовать виртуальный графический процессор (vGPU).
Ускорение графики обеспечивается за счет предоставления слоя с реализацией OpenGL поверх DirectX 12. Уровень разработан в виде драйвера d3d12, который был включен в основную часть Mesa 21.0 и разрабатывается совместно с Collabora.
Установка WSLGd выполняется с помощью стандартной команды «wsl –install», например для Ubuntu - «wsl –install -d Ubuntu».
Для существующих сред WSL2 WSLGd устанавливается с помощью команды «wsl –update» (поддерживаются только среды WSL2, использующие ядро Linux, но не трансляция вызовов). Графические приложения устанавливаются через обычный пакетный менеджер дистрибутива.
источник: https://devblogs.microsoft.com/
Очевидно, Linux очень неудобен для определенных людей или компаний. Насколько я понимаю, суть в том, чтобы избавиться от Linux.