Microsoft ogłosił subsystém WSL2 z natywnym jądrem Linux

Firma Microsoft zaprezentowała na odbywającej się konferencji Microsoft Build 2019 zaktualizowaną podsystem WSL2 (Windows Subsystem for Linux), przeznaczoną do uruchamiania plików wykonywalnych Linux w Windows. Kluczową cechą drugiej edycji jest dostarczenie pełnoprawnego jądra Linux, zamiast warstwy tłumaczącej wywołania systemowe Linux na wywołania systemowe Windows.

Testowe wydanie WSL2 zostanie przedstawione pod koniec czerwca w wersjach eksperymentalnych Windows Insider. WSL1 w oparciu o emulator będzie nadal wspierany, a użytkownicy będą mogli korzystać z niego obok WSL2. Do uruchomienia jądra Linux w środowisku Windows wykorzystana będzie lekka maszyna wirtualna, już stosowana w Azure.

W ramach WSL2 dla Windows 10 będzie dostępny komponent z jądrem Linux 4.19. W miarę wydawania poprawek dla gałęzi LTS 4.19, jądro dla WSL2 będzie na bieżąco aktualizowane za pomocą mechanizmu Windows Update i testowane w infrastrukturze ciągłej integracji Microsoftu. W WSL2 będzie używane to samo jądro, które stosowane jest w infrastrukturze Azure, co ułatwi utrzymanie.

Wszystkie przygotowane zmiany do integracji jądra z WSL będą opublikowane na otwartej licencji GPLv2 i przekazane do projektu upstream. Przygotowane poprawki obejmują optymalizacje skracające czas uruchamiania jądra, redukujące zużycie pamięci oraz pozostawiające w jądrze minimalny zestaw niezbędnych sterowników i podsystemów. Proponowane jądro będzie mogło działać jako przezroczysta alternatywa dla warstwy emulacyjnej oferowanej w WSL1. Posiadanie kodu źródłowego umożliwi entuzjastom tworzenie własnych wersji jądra Linux dla WSL2, do czego zostaną przygotowane niezbędne instrukcje.

Użycie standardowego jądra z optymalizacjami od projektu Azure pozwoli uzyskać pełną zgodność z Linuxem na poziomie wywołań systemowych oraz zapewni możliwość bezproblemowego uruchamiania kontenerów Docker w Windows, a także zrealizuje wsparcie dla systemów plików opartych na mechanizmie FUSE. Dodatkowo w WSL2 znacznie zwiększono wydajność operacji wejścia/wyjścia i operacji na systemie plików, które wcześniej były wąskim gardłem WSL1. Na przykład, podczas rozpakowywania skompresowanego archiwum WSL2 jest 20 razy szybszy niż WSL1, a przy wykonywaniu operacji
«git clone», «npm install», «apt update» i «apt upgrade» w 2-5 razy.

Pomimo dostarczenia jądra Linux, WSL2 nadal nie oferuje gotowego zestawu komponentów dla przestrzeni użytkownika. Komponenty te instalowane są osobno i opierają się na wersjach różnych dystrybucji. Na przykład, aby zainstalować w WSL z katalogu Microsoft Store oferowane są wersje Ubuntu, Debian GNU/Linux, Kali Linux, SUSE и openSUSE. Aby w interakcji z oferowanym w Windows jądrem Linux, wymagana będzie podmianka niewielkiego skryptu inicjalizacyjnego w dystrybucji, zmieniającego proces ładowania. Firma Canonical już zadeklarowała zamierzenie zapewnienia pełnej obsługi działania Ubuntu na WSL2.

Dodatkowo można zauważyć publikację emulatora terminala przez firmę Microsoft Windows Terminal, którego kod jest dostępny na licencji MIT. Wraz z terminalem udostępniony jest również kod oryginalnego interfejsu wiersza poleceń conhost.exe, stosowanego w systemie Windows i realizującego Windows Console API. Terminal oferuje interfejs oparty na zakładkach i dzielonych oknach, w pełni obsługuje Unicode oraz sekwencje ucieczki dla kolorowego wyjścia, umożliwia zmianę motywów oraz instalację rozszerzeń, wspiera wirtualne konsoli (PTY) i wykorzystuje DirectWrite/DirectX do przyspieszania renderowania tekstu. W terminalu można korzystać z powłok Command Prompt (cmd), PowerShell oraz WSL. Latem nowy terminal będzie dostępny dla użytkowników Windows w katalogu Microsoft Store.

Microsoft ogłosił subsystém WSL2 z natywnym jądrem Linux

Źródło: opennet.ru

Kup solidny hosting dla stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting dla stron z ochroną przed DDoS, serwery VPS VDS | ProHoster