Microsoft анонсировал подсистему WSL2 со штатным ядром Linux

7 мая 2019 года

Компания Microsoft представила на проходящей в эти дни конференции Microsoft Build 2019 обновлённую подсистему WSL2 (Windows Subsystem for Linux), предназначенную для запуска исполняемых файлов Linux в Windows. Ключевой особенностью второй редакции является поставка полноценного ядра Linux, вместо прослойки на лету транслирующей системные вызовы Linux в системные вызовы Windows.

Тестовый выпуск WSL2 будет предложен в конце июня в экспериментальных сборках Windows Insider. Поддержка WSL1 на базе эмулятора будет сохранена и пользователи смогут использовать её бок о бок с WSL2. Для запуска ядра Linux в окружении Windows задействована легковесная виртуальная машина, уже применяемая в Azure.

В рамках WSL2 для Windows 10 будет предлагаться компонент со штатным ядром Linux 4.19. По мере выхода исправлений для LTS ветки 4.19, ядро для WSL2 будет оперативно обновляться через механизм Windows Update и тестироваться в инфраструктуре непрерывной интеграции Microsoft. В WSL2 будет использоваться то же ядро, что применяется в инфраструктуре Azure, что позволит упростить сопровождение.

Все подготовленные для интеграции ядра с WSL изменения будут опубликованы под свободной лицензией GPLv2 и будут передаваться в upstream. Подготовленные патчи включают оптимизации для сокращения времени запуска ядра, уменьшения потребления памяти и оставления в ядре минимально необходимого набора драйверов и подсистем. Предлагаемое ядро сможет выступать в качестве прозрачной замены эмулирующей прослойки, предлагаемой в WSL1. Наличие исходных текстов позволит энтузиастам при желании формировать свои сборки ядра Linux для WSL2, для чего будут подготовлены необходимые инструкции.

Использование штатного ядра с оптимизациями от проекта Azure позволит добиться полной совместимости c Linux на уровне системных вызовов и обеспечить возможность бесшовного запуска в Windows контейнеров Docker, а также реализовать поддержку файловых систем на базе механизма FUSE. Кроме того в WSL2 существенно увеличена производительность ввода/вывода и операций с файловой системой, которая раньше была узким местом WSL1. Например, при распаковке сжатого архива WSL2 быстрее WSL1 в 20 раз, а при выполнении операций "git clone", "npm install", "apt update" и "apt upgrade" в 2-5 раз.

Несмотря на поставку ядра Linux, как и раньше WSL2 не будет предоставлять готовый набор компонентов для пространства пользователя. Данные компоненты устанавливаются отдельно и базируются на сборках различных дистрибутивов. Например, для установки в WSL в каталоге Microsoft Store предлагаются сборки Ubuntu, Debian GNU/Linux, Kali Linux, SUSE и openSUSE. Для взаимодействия с предлагаемым в Windows ядром Linux потребуется подстановка в дистрибутив небольшого скрипта инициализации, изменяющего процесс загрузки. Компания Canonical уже заявила о намерении обеспечить полноценную поддержку работы Ubuntu поверх WSL2.

Дополнительно можно отметить публикацию компанией Microsoft эмулятора терминала Windows Terminal, код которого распространяется под лицензией MIT. Вместе с терминалом также открыт код оригинального интерфейса командной строки conhost.exe, применяемого в Windows и реализующего Windows Console API. Терминал предоставляет интерфейс на базе вкладок и разделяемые окна, полностью поддерживает Unicode и escape-последовательности для цветного вывода, позволяет менять темы оформления и подключать дополнения, поддерживает виртуальные консоли (PTY) и использует DirectWrite/DirectX для ускорения отрисовки текста. В терминале возможно использование оболочек Command Prompt (cmd), PowerShell и WSL. Летом новый терминал станет доступен пользователям Windows через каталог Microsoft Store.

Дополнение: Опубликован FAQ с ответами на некоторые вопросы про WSL2. WSL2 будет доступен для всех вариантов Windows, для которых ранее поставлялся WSL1, в том числе для Windows 10 Home. WSL1 и WSL2 можно будет использовать параллельно в одной системе. Изоляция реализована через виртуализацию на базе гипервизора Hyper-V. Обеспечена виртуализация сетевого стека и окружения WSL2 могут запускаться в привязке к отдельному IP-адресу. В первых выпусках поддержка оборудования остаётся ограниченой, в том числе пока невозможно получить доступ к GPU и USB, но со временем данные возможности будут добавлены.

Источники править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Microsoft анонсировал подсистему WSL2 со штатным ядром Linux», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.