Разделы

Системное ПО Открытое ПО

Microsoft решилась открыть исходный код «эмулятора» Linux под Windows

Спустя почти девять леть с момента первоначального релиза Microsoft опубликовала исходный код подсистемы Windows для Linux – слоя совместимости, обеспечивающего запуск Linux-приложений в Windows, под свободной лицензией MIT. Отдельные компоненты подсистемы останутся частью Windows и останутся закрытыми, во всяком случае пока.

WSL становится ПО с открытым кодом

Корпорация Microsoft открыла исходный код подсистемы Linux для Windows, пишет The Register.

Подсистема Windows для Linux (Windows Subsystem for Linux; WSL) позволяет запускать в операционных системах Windows 10 и 11 Linux-приложения, без необходимости их портирования или перекомпиляции, а также устанавливать и использовать некоторые дистрибутивы Linux, не выходя из Windows и не прибегая к применению стороннего ПО для виртуализации.

WSL была представлена в апреле 2016 г. и вошло в состав финальной сборки Windows 10 в августе 2016 г. С тех пор эта подсистема ОС развивалась в тесной связи с сообществом, однако ее исходный код – за исключением связанных ядром Linux и другими Open Source-компонентами – программистам за пределами Microsoft был недоступен.

Открыт код ряда компонентов WSL

Теперь исходники большинства компонентов WSL размещены в специальном публичном репозитории “microsoft/WSL” на хоcтинге GitHub и доступны на условиях свободной лицензии MIT. В числе компонентов, код которых был опубликован, утилиты командной строки (wsl.exe, wslg.exe), фоновые службы (wslservice.exe) и демоны (Linux-службы), необходимые для настройки сети, проброса портов и запуска других сервисов.

Техническая документация к проекту на английском языке опубликована на отдельном сайте wsl.dev. Руководство пользователя по WSL, в том числе русскоязычное, на портале документации Microsoft.

Без ложки дегтя не обошлось

Код компонентов, являющихся составной частью Windows, в том числе ядра операционной системы, и необходимых для работы WSL на данном этапе Microsoft публиковать под открытой лицензией не планирует. К ним относятся lxcore.sys, драйвер ядра для WSL1, обеспечивающий запуск исполняемых файлов Linux (ELF) через специальный слой совместимости, а также 9rdr.sys и p9np.dll, позволяющие получать доступ из Windows к файловой системе Linux за счет перенаправления “\\wsl.localhost” при поддержке протокола 9P.

Наличие доступа к исходному коду подсистемы позволит всем желающим свободно изучать принципы ее устройство, самостоятельно добавлять новые функции и возможности, а также принимать участие в разработке WSL.

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

Как развивалась WSL

WSL1, появившаяся в 2016 г., предлагала прослойку совместимости, которая обеспечивала трансляцию системных вызовов Linux и обеспечивала взаимодействие с ядром Windows NT посредством lxcore.sys. Однако этот инструмент позволял запускать далеко не все существующие Linux-приложения.

В 2019 г. была представлена WSL2, которая строилась на полноценном ядре Linux, которое было специальным образом модифицировано Microsoft. Во второй версии WSL ядро и сопутствующие компоненты Linux запускаются в виртуальной машине, которая действует в фоновом режиме. Подобный подход позволил решить крупные проблемы совместимости с приложениями Linux и повысить общую производительность запущенной внутри легковесной виртуальной машины Linux-среды, в особенности, операций ввода/вывода. Кроме того, отныне пользователи Windows получили возможность устанавливать популярные дистрибутивы Linux прямо из магазина Microsoft Store, такие как Ubuntu или Fedora.

Платформа Digital Q.BPM от «Диасофт» стабильно работает при нагрузке более 4 000 бизнес-процессов в секунду
Цифровизация

В мае 2020 г. CNews сообщил о том, что WSL2 получит возможность прямого запуска Linux-приложений с графическим интерфейсом, поддержку аппаратного ускорения графики с помощью графического процессора компьютера (GPU), а также упрощенную процедуру установки подсистемы при помощи всего одной команды.

В апреле 2021 г. Microsoft начала публичное тестирование WSLg – часть подсистемы Windows для Linux, которая, собственно, и отвечает за вывод графического интерфейса Linux-программ. Как поясняли в Microsoft, WSLg – компонент, упакованный в компактный контейнер на базе собственного дистрибутива Linux корпорации Microsoft под названием CBL-Mariner Linux (теперь – Azure Linux) и ряда компонентов, таких как Pulse Audio-, Wayland-, X- и RDP-серверы. Они взаимодействуют с пользовательским дистрибутивом через сокеты, а для получения визуальной информации от Linux-приложения и вывода ее на экран в Windows применяется встроенный в ОС RDP-клиент.

Linux-приложения, запущенные через WSLg, поддерживают полноценное воспроизведение звука и запись с микрофона без изменения каких-либо настроек. Окна таких программ, по заявлению Microsoft, правильно отображаются в карусели запущенных приложений (вызывается по нажатию комбинации клавиш Alt+Tab) и на панели задач, а также в полном объеме поддерживают взаимодействие через буфер обмена. Наравне с «родными», Linux-приложения после установки попадают в меню «Пуск».

Дмитрий Степанов



37-я международная выставка информационных и коммуникационных технологий Связь-2025 37-я международная выставка информационных и коммуникационных технологий Связь-2025

erid: 2W5zFHRYEHv

Рекламодатель: АКЦИОНЕРНОЕ ОБЩЕСТВО «ЭКСПОЦЕНТР»

ИНН/ОГРН: 7718033809/1027700167153