Microsoft начинает тестирование поддержки запуска приложений Linux с графическим интерфейсом пользователя в Windows

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/


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Фрэнк сказал

    Очевидно, Linux очень неудобен для определенных людей или компаний. Насколько я понимаю, суть в том, чтобы избавиться от Linux.