مایکروسافت на проходящей в эти дни конференции Microsoft Build 2019 обновлённую подсистему WSL2 (Windows زیرسیستم برای Linux) ، طراحی شده برای اجرای فایلهای اجرایی Linux в Windows. Ключевой второй редакции является поставка полноценного ядра Linuxبه جای لایهای که فراخوانیهای سیستمی را درجا ترجمه میکند Linux به فراخوانیهای سیستمی Windows.
نسخه آزمایشی WSL2 در پایان ماه ژوئن در بیلدهای آزمایشی ارائه خواهد شد . Поддержка 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 مجامع , , и . Для взаимодействия с предлагаемым в Windows ядром Linux потребуется подстановка в дистрибутив небольшого скрипта инициализации, изменяющего процесс загрузки. Компания Canonical уже о намерении обеспечить полноценную поддержку работы Ubuntu поверх WSL2.
علاوه بر این، می توان به آن اشاره کرد شبیه ساز ترمینال توسط مایکروسافت , код которого распространяется под лицензией MIT. Вместе с терминалом также открыт код оригинального интерфейса командной строки conhost.exe, применяемого в Windows и реализующего Windows Console API. Терминал предоставляет интерфейс на базе вкладок и разделяемые окна, полностью поддерживает Unicode и escape-последовательности для цветного вывода, позволяет менять темы оформления и подключать дополнения, поддерживает виртуальные консоли (PTY) и использует DirectWrite/DirectX для ускорения отрисовки текста. В терминале возможно использование оболочек Command Prompt (cmd), PowerShell и WSL. Летом новый терминал станет доступен пользователям Windows через каталог Microsoft Store.
منبع: opennet.ru
