На прошлой неделе Разработчики Microsoft анонсировали несколько значительных улучшений подсистема WSL (Подсистема Windows для Linux), которая позволяет приложениям Linux работать в Windows. В виде Начиная с майского обновления Windows 10, первая установка среды Linux по умолчанию он будет использовать слой WSL2.
Среда WSL2 работает на образе диска (HDV) отдельно от файловой системы ext4 и виртуальный сетевой адаптер. Ядро Linux в WSL2 Он не будет включен в установочный образ Windows, но Windows загрузит его динамически. и он сохранит его в текущем виде, подобно тому, как устанавливаются и обновляются графические драйверы. Для установки и обновления ядра будет использован стандартный механизм Центра обновления Windows.
Предлагаемое ядро для WSL2 основан на версии ядра Linux 4.19., работающей в среде Windows с использованием виртуальной машины, которая уже используется в Azure.
Патчи для WSL2, используемые в ядре, включают оптимизацию для сокращения времени запуска ядра, уменьшения потребления памяти, возврата Windows в память, освобожденную процессами Linux, и оставляют минимальный набор необходимых драйверов и подсистем в ядре.
Теперь можно запускать графические приложения в WSL.
Помимо вышеупомянутого, выделяется еще одна новинка: Первоначальная поддержка приложений Linux с графическим интерфейсом «WSU GPU».
Поддержка sи реализует путем виртуализации доступа к графическому процессору и предоставления драйверов через которые могут функционировать обычные графические подсистемы дистрибутивов Linux, в том числе на основе Wayland. Графические приложения Linux и Windows могут работать параллельно на рабочем столе Windows.
Для ядра Linux был подготовлен открытый драйвер dxgkrnl, обеспечивающий устройство / dev / dxg службами, которые копируют модель драйвера дисплея Windows (WDDM) D3DKMT ядра Windows. Контроллер устанавливает соединение с физическим графическим процессором с помощью шины виртуальной машины. Приложения Linux имеют тот же уровень доступа к графическому процессору, что и собственные приложения Windows, без совместного использования ресурсов между Windows и Linux.
Кроме того, библиотекарьlibd3d12.so предоставляется для Linux, что обеспечивает Полный графический API Direct3D 12.
Библиотека libd3d12.so построена из того же кода, что и собственная реализация Direct3D 12 для Windows. и полностью аналогичен по функциональности библиотеке d3d12.dll.
Я также знаю предоставляет упрощенную версию DXGI API (Графическая инфраструктура DirectX) в виде библиотеки DxCore (libdxcore.so). Библиотеки libd3d12.so и libdxcore.so являются проприетарными и поставляются только в виде двоичных сборок (смонтированных на WSL как / usr / lib / wsl / lib), совместимых с Ubuntu, Debian, Fedora, Centos, SUSE и другими дистрибутивами на основе Glibc. .
Поддержка OpenGL в Mesa обеспечивается через слой который переводит вызовы API DirectX 12. Метод реализации Vulkan API все еще находится на стадии планирования.
На первом этапе в средах WSL будут поддерживаться CUDA и DirectML, работа с D3D12 API (например, в среде Linux вы можете запускать TensorFlow с серверной частью для DirectML). Поддержка OpenCL возможна через уровень, который выполняет отображение вызовов в API DirectX 12.
Microsoft разрабатывает свой составной менеджер с использованием протокола Wayland и основан на кодовой базе Уэстона. Составной менеджер использует RDP-RAIL (локально интегрированное удаленное приложение RDP) для организации вывода интерфейса приложения Linux на основной рабочий стол Windows. RDP-RAIL отличается от бэкэнда RDP, ранее доступного от Weston, тем, что составной менеджер не отображает сам рабочий стол, а вместо этого перенаправляет отдельные поверхности (wl_surface) через канал RDP RAIL для отображения на основном рабочем столе Windows.
Кроме того, вскоре будет поддерживаться установка WSL с помощью простой команды wsl.exe –install.
Наконец, если вы хотите узнать об этом больше, вы можете проконсультироваться подробности по следующей ссылке.
Вы в одном шаге от того, чтобы изменить название сайта на wsladictos.com.
WSL, нравится вам это или нет, является частью мира Linux, и мы должны его охватить.
WSL не является реализацией, предназначенной для пользователя в «общем», следует понимать, что он предназначен, в частности, для разработчиков, системных администраторов, и когда придет время работать, вы должны отказаться от предпочтений и соблюдать рекомендации, которые Вам Это навязывает человеку или компании, на которую вы работаете, если это позволяет вам работать с комфортом, это превосходно, но если это то, что вам навязывают, другого пути нет.