Microsoftu na konferencji Microsoft Build 2019, która odbywa się obecnie, zaprezentowano zaktualizowany podsystem WSL2 (Windows Podsystem dla Linux), zaprojektowany do uruchamiania plików wykonywalnych Linux в Windows. Klucz Druga edycja dostarcza pełnoprawne jądro Linuxzamiast warstwy, która tłumaczy wywołania systemowe w locie Linux do wywołań systemowych Windows.
Wersja testowa WSL2 będzie oferowana pod koniec czerwca w wersjach eksperymentalnych Obsługa WSL1 oparta na emulatorze zostanie zachowana, a użytkownicy będą mogli korzystać z niej równolegle z WSL2. Aby uruchomić jądro Linux otoczony Windows Wykorzystano lekką maszynę wirtualną, która jest już używana na platformie Azure.
W ramach WSL2 dla Windows 10 oferowany będzie komponent ze standardowym jądrem Linux 4.19. W miarę wydawania poprawek dla gałęzi LTS 4.19 jądro WSL2 będzie szybko aktualizowane za pomocą mechanizmu Windows Zaktualizowano i przetestowano w infrastrukturze ciągłej integracji firmy Microsoft. WSL2 będzie korzystać z tego samego jądra, co w infrastrukturze Azure, co uprości konserwację.
Wszystkie zmiany przygotowane do integracji jądra z WSL zostaną opublikowane na bezpłatnej licencji GPLv2 i będą udostępniane w ramach upstreamingu. Przygotowane poprawki obejmują optymalizacje skracające czas uruchamiania jądra, zmniejszające zużycie pamięci oraz zachowujące minimalny wymagany zestaw sterowników i podsystemów w jądrze. Proponowane jądro będzie mogło pełnić rolę transparentnego zamiennika warstwy emulacji oferowanej w WSL1. Dostępność kodu źródłowego umożliwi entuzjastom tworzenie własnych kompilacji jądra, jeśli zajdzie taka potrzeba. Linux dla WSL2, dla którego zostaną przygotowane niezbędne instrukcje.
Użycie standardowego jądra z optymalizacjami z projektu Azure zapewni pełną zgodność z Linux na poziomie wywołań systemowych i zapewnić możliwość płynnego działania w Windows Kontenery Dockera, a także implementują obsługę systemów plików opartych na mechanizmie FUSE. Co więcej, WSL2 znacząco poprawia wydajność wejścia/wyjścia i operacji na systemie plików, które wcześniej stanowiły wąskie gardło w WSL1. Na przykład, podczas rozpakowywania skompresowanego archiwum, WSL2 jest 20 razy szybszy niż WSL1, a podczas wykonywania operacji…
„git clone”, „npm install”, „apt update” i „apt upgrade” 2-5 razy.
Pomimo dostarczenia rdzenia LinuxPodobnie jak poprzednio, WSL 2 nie będzie oferował gotowego zestawu komponentów przestrzeni użytkownika. Komponenty te są instalowane oddzielnie i bazują na kompilacjach różnych dystrybucji. Na przykład, do instalacji w WSL, katalog Microsoft Store zespoły , , и Aby wejść w interakcję z proponowanym w Windows rdzeń Linux Wymaga to zainstalowania w dystrybucji małego skryptu inicjalizacyjnego, który modyfikuje proces rozruchu. Canonical już to zrobił. o zamiarze udzielenia pełnego wsparcia dla pracy Ubuntu na szczycie WSL2.
Dodatkowo można to zauważyć emulator terminala firmy Microsoft , którego kod jest dystrybuowany na licencji MIT. Oprócz terminala, kod oryginalnego interfejsu wiersza poleceń conhost.exe używanego w Windows i wdrażanie Windows Interfejs API konsoli. Terminal oferuje interfejs z zakładkami i dzielone okna, w pełni obsługuje Unicode i sekwencje ucieczki dla kolorów, umożliwia zmianę motywu i dodawanie dodatków, obsługuje konsole wirtualne (PTY) oraz wykorzystuje DirectWrite/DirectX do szybszego renderowania tekstu. Terminal obsługuje wiersz poleceń (cmd), PowerShell i powłoki WSL. Nowy terminal będzie dostępny dla użytkowników tego lata. Windows poprzez katalog Microsoft Store.
Źródło: opennet.ru
