Microsoft zaprezentował wydanie warstwy do uruchamiania aplikacji Linux na Windows - WSL 1.0.0 (Windows Subsystem for Linux), która jest oznaczona jako pierwsza stabilna wersja projektu. Jednocześnie usunięto oznaczenie eksperymentalnego rozwoju z pakietów WSL dostarczanych za pośrednictwem sklepu z aplikacjami Microsoft Store.
Polecenia „wsl --install” i „wsl --update” zostały domyślnie przełączone tak, aby do instalacji i aktualizacji WSL używać sklepu Microsoft Store, co pozwala na znacznie szybsze dostarczanie aktualizacji w porównaniu do dystrybucji w formie wbudowanego Składnik Windowsa. Aby powrócić do starego schematu instalacji, narzędzie wsl oferuje opcję „--inbox”. Dodatkowo wsparcie dla buildów dla Windows 10 zapewnione zostało poprzez Microsoft Store, co umożliwiło użytkownikom tej platformy dostęp do takich innowacji w WSL jak uruchamianie graficznych aplikacji linuksowych oraz obsługa systemowego menadżera systemu.
Zaktualizowane narzędzie wsl.exe, domyślnie ustawione na pobieranie ze sklepu Microsoft Store, jest zawarte w listopadowych aktualizacjach Windows 10 i 11 „22H2”, które obecnie są instalowane dopiero po ręcznym sprawdzeniu (Ustawienia systemu Windows -> „Sprawdź aktualizacje”) i zostanie zastosowany automatycznie w połowie grudnia. Jako alternatywną opcję instalacji możesz także użyć pakietów msi hostowanych w GitHub.
Aby mieć pewność, że pliki wykonywalne Linuksa będą działać w WSL, zamiast oryginalnego emulatora, który przetłumaczył wywołania systemowe Linuksa na wywołania systemowe Windows, zapewniono środowisko z pełnoprawnym jądrem Linuksa. Jądro proponowane dla WSL opiera się na wydaniu jądra Linuksa 5.10, które jest rozszerzone o poprawki specyficzne dla WSL, w tym optymalizacje mające na celu skrócenie czasu uruchamiania jądra, zmniejszenie zużycia pamięci, przywrócenie systemu Windows do pamięci zwolnionej przez procesy Linuksa i pozostawienie minimalnej wymagany zestaw sterowników i podsystemów w jądrze.
Jądro działa w środowisku Windows przy użyciu maszyny wirtualnej już działającej na platformie Azure. Środowisko WSL działa na oddzielnym obrazie dysku (VHD) z systemem plików ext4 i wirtualną kartą sieciową. Komponenty przestrzeni użytkownika są instalowane oddzielnie i bazują na kompilacjach różnych dystrybucji. Na przykład do instalacji w WSL katalog Microsoft Store oferuje kompilacje Ubuntu, Debian GNU/Linux, Kali Linux, Fedora, Alpine, SUSE i openSUSE.
Wersja 1.0 naprawia około 100 błędów i wprowadza kilka innowacji:
- Dodano opcjonalną funkcję umożliwiającą korzystanie z menedżera systemu systemowego w środowiskach Linux. Wsparcie systemowe pozwala na zmniejszenie wymagań stawianych dystrybucjom i przybliżenie środowiska udostępnianego w WSL do sytuacji uruchamiania dystrybucji na konwencjonalnym sprzęcie. Wcześniej, aby pracować w WSL, dystrybucje musiały używać dostarczonej przez firmę Microsoft procedury inicjalizacji, która działa pod PID 1 i zapewnia konfigurację infrastruktury zapewniającą interoperacyjność między systemami Linux i Windows.
- Dla systemu Windows 10 zaimplementowano możliwość uruchamiania graficznych aplikacji linuksowych (wcześniej obsługa grafiki była dostępna tylko w systemie Windows 11).
- Do polecenia „wsl --install” dodano opcję „--no-launch”, aby wyłączyć uruchamianie dystrybucji po instalacji.
- Do poleceń „wsl —update” i „wsl —install” dodano opcję „--web-download”, aby pobierać komponenty za pośrednictwem GitHub zamiast ze sklepu Microsoft Store.
- Do polecenia „wsl –mount” dodano opcje „--vhd” w celu zamontowania plików VHD oraz „--name” w celu określenia nazwy punktu montowania.
- Dodano polecenie „--vhd” do poleceń „wsl --import” i „wsl --export” w celu importowania lub eksportowania w formacie VHD.
- Dodano polecenie „wsl --import-in-place” umożliwiające zarejestrowanie i użycie istniejącego pliku .vhdx jako dystrybucji.
- Dodano polecenie „wsl --version”, aby wyświetlić numer wersji.
- Poprawiona obsługa błędów.
- Komponenty do obsługi aplikacji graficznych (WSLg) i jądro Linuksa są zintegrowane w jednym pakiecie, który nie wymaga pobierania dodatkowych plików MSI.
Gorąco depcząc po piętach ukazała się aktualizacja WSL 1.0.1 (obecnie w statusie Pre-release), która wyeliminowała zawieszanie się procesu wslservice.exe przy uruchamianiu nowej sesji, pliku z gniazdem unixowym /tmp/.X11- unix został przełączony w tryb tylko do odczytu, poprawiono obsługę błędów.
Źródło: opennet.ru