Společnost Microsoft Na probíhající konferenci Microsoft Build 2019 byla představena aktualizovaná podsystem WSL2 (Windows Subsystem for Linux), určená k spouštění spustitelných souborů Linuxu ve Windows. Klíčový prvek druhé edice spočívá v dodání plnohodnotného jádra Linux, místo meziproduktu, který naživo převáděl systémové volání Linuxu na systémová volání Windows.
Testovací verze WSL2 bude k dispozici na konci června v experimentálních sestaveních. Podpora WSL1 založená na emulátoru bude zachována a uživatelé ji budou moci používat vedle WSL2. Pro spuštění jádra Linux v prostředí Windows bude využita lehká virtuální mašina, která se již aplikuje v Azure.
V rámci WSL2 pro Windows 10 bude nabídnut komponent se standardním jádrem Linux 4.19. Jakmile budou vydány opravy pro LTS větev 4.19, jádro pro WSL2 bude rychle aktualizováno prostřednictvím mechanismu Windows Update a testováno v infrastruktuře kontinuální integrace Microsoftu. Ve WSL2 bude použito to samé jádro, které se aplikuje v infrastruktuře Azure, což usnadní údržbu.
Všechny připravené změny pro integraci jádra s WSL budou zveřejněny pod svobodnou licencí GPLv2 a budou posílány do upstreamu. Připravené patche zahrnují optimalizace pro zkrácení doby spuštění jádra, snížení spotřeby paměti a minimalizaci sady ovladačů a subsystémů v jádru. Navrhované jádro bude schopno fungovat jako transparentní náhrada emulační vrstvy, která byla nabízena ve WSL1. Přítomnost zdrojových kódů umožní nadšencům vytvářet své vlastní sestavy jádra Linux pro WSL2, pro které budou připraveny nezbytné pokyny.
Použití standardního jádra s optimalizacemi z projektu Azure umožní dosažení plné kompatibility s Linuxem na úrovni systémových volání a zajistí bezproblémové spuštění kontejnerů Docker ve Windows a implementaci podpory souborových systémů na základě mechanismu FUSE. Kromě toho bylo ve WSL2 výrazně zvýšeno výkon vstupu/výstupu a operací se souborovým systémem, který byl dříve úzkým místem WSL1. Například při rozbalování komprimovaného archivu je WSL2 20krát rychlejší než WSL1, a při provádění operací
"git clone", "npm install", "apt update" a "apt upgrade" je 2–5krát rychlejší.
I když se dodává jádro Linux, jako už dříve, WSL2 nebude poskytovat připravenou sadu komponent pro uživatelský prostor. Tyto komponenty se instalují zvlášť a vycházejí z různých distribucí. Například pro instalaci do WSL v katalogu Microsoft Store sestavení , , a . Pro interakci s nabízeným jádrem Linux ve Windows bude třeba vložit do distribuce malý inicializační skript, který mění proces spuštění. Společnost Canonical již oznámila záměr zajistit plnou podporu pro Ubuntu běžící na WSL2.
Dále lze poznamenat společností Microsoft emulátor terminálu , jehož kód je šířen pod licencí MIT. Společně s terminálem byl také otevřen kód původního rozhraní příkazového řádku conhost.exe, použitého ve Windows a implementujícího Windows Console API. Terminál poskytuje rozhraní na bázi záložek a sdílených oken, plně podporuje Unicode a escape sekvence pro barevný výstup, umožňuje měnit motivy a připojovat rozšíření, podporuje virtuální konzole (PTY) a používá DirectWrite/DirectX pro zrychlení vykreslování textu. V terminálu je možné používat shell Command Prompt (cmd), PowerShell a WSL. V létě bude nový terminál k dispozici uživatelům Windows prostřednictvím katalogu Microsoft Store.
Zdroj: opennet.ru
