Kompania Microsoft publikoi versioni i mjetit WSL 3.0 (Windows Subsystem for Linux), i cili lejon ekzekutimin e aplikacioneve Linux në Windows. Rruga e re është e veçantë për zbatimin e mundësisë për ekzekutimin e kontejnerëve Linux në Windows dhe kalimin në përdorimin e bërthamës Linux 6.18. Kodi i mjeteve të linjës së komandës të përdorura në WSL, proceseve sfondore për ambientet Linux, shërbimeve për ekzekutimin e kontejnerëve dhe makinerisë virtuale, si dhe grumbullit grafik wslg është i hapur nën licencën MIT. Ndryshimet për bërthamën Linux ofrohen nën licencën GPLv2.
WSL ofron një makinë virtuale me një bërthamë të plotë Linux (bazuar në rrugën 6.18), në të cilën mund të ekzekutohen distribucione Linux. Bërthama përfshin ndryshime specifike për WSL, si optimizimet për të reduktuar kohën e ngarkesës dhe zvogëlimin e konsumit të memories, mundësinë e rikthimit të memories së çliruar nga proceset Linux në Windows dhe konfigurime për përjashtimin e drejtuesve dhe sistemeve të tepërta. Sistemi instalon në një imazh diskesh të veçantë (VHD) me sistemin e skedarëve ext4 dhe një adaptues rrjeti virtual.
Pjesa e re përfshin mjete për krijimin, zhvillimin dhe ekzekutimin e kontejnerëve Linux në Windows, duke përfshirë ndërfaqen e linjës së komandës wslc (WSL Containers) dhe API-në përkatëse, e cila lejon ekzekutimin e kontejnerëve Linux nga programet Windows. Mundësitë kryesore të wslc janë:
- Operacionet për menaxhimin e ciklit të jetës së kontejnerëve, të tilla si krijimi, ekzekutimi, ndalimi, eksportimi, pastrimi, inspektimi, verifikimi i funksionimit, transmetimi i ngjarjeve rreth aktivitetit të kontejnerit, kopjimi i skedarëve në kontejner dhe nga kontejneri.
- Kufizimi i konsumit të CPU dhe memorjes për kontejnerët individualë.
- Ndërtimi, ngarkimi, dërgimi, importimi, ruajtja dhe verifikimi i imazheve sistemike. Komandat për shikimin e listave të imazheve të disponueshme. Operacione grupore me disa imazhe menjëherë. Mundësia për paketimin e disa imazheve në një arkiv tar.
- Krijimi dhe menaxhimi i rrjeteve virtuale. Bashkimi i kontejnerëve në disa rrjete. Krijimi i llojeve të përshtatshme të rrjeteve. Shkëmbimi i porteve rrjet.
- Krijimi, shikimi dhe fshirja e ndarjeve. Puna me disqet virtuale (VHD).
- Qasje në GPU nga kontejnerët dhe ofrimi i bibliotekave për punë të përdoruesve të papërjashtuar me GPU.
- Krijimi i sesioneve sipas nevojës, emërtimi i sesioneve, vendndodhje të personalizueshme të magazinimit.
- SDK me API për automatizimin e punës me kontejnerët nga programet në C++ dhe C#/WinRT.
- Komanda «wslc logs» për shikimin dhe selektimin e të dhënave nga logjet. Shfaqja e statistikave mbi funksionimin e kontejnerit. Skicimi i output-it në utilitarin «wslc».
- Integrimi me MSBuild dhe CMake.
- Mbështetje për menaxhimin përmes politikave grupore ADMX.
- Mbështetje për zgjerimin e VS Code dev container për aktivizimin dhe ndërtimin e kodit në proces zhvillimi në konteiner.
- Mundësia e përdorimit të wslc si runtime për ekzekutimin e kontejnerëve në mjetet Aspire.
- Zgjerimi i vscode-container-client për menaxhimin e kontejnerëve nga redaktori i kodit VS Code.
- Menaxhimi i kontejnerëve wslc përmes ndërfaqes tekstuale Lazywslc ose aplikacionit desktop WinUI 3.
- Një mbështetje për ekzekutimin e kontejnerëve Linux nga distribucionet Linux të ekzekutuara në WSL.

Në kontejnerë përdoret me default sistemi i skedareve "virtiofs", i cili tregon një përshpejtim dyfish të aksesit në skedarët Windows, dhe modaliteti i punës së rrjetit "consomme", i cili siguron përmirësim të kompatibilitetit me konfigurations e ndryshme të rrjeteve (VPN, proxy et al.). Në modin «consomme», trafiku Linux përcillet përmes Windows, çka lejon përdorimin e të gjitha mundësive të mjedisit rrjet Windows për aplikacionet Linux, duke përfshirë politikat e sigurisë dhe mjetet për integrimin me sistemet e korporatës.
PĂ«r ekzekutimin e kontejnerĂ«ve Ă«shtĂ« pĂ«rgjegjĂ«s shĂ«rbimi i privilegjuar Windows wslservice.exe, i cili nis makina virtuale dhe i pĂ«rdor ata pĂ«r ekzekutimin e Linux. NĂ« dallim nga WSL, shĂ«rbimi wslservice.exe krijon pĂ«r kontejnerĂ«t njĂ« proces dytĂ«sor wslcsession.exe, i cili ekzekutohet me tĂ« drejtat e pĂ«rdoruesit aktual dhe merr pĂ«rsipĂ«r operacione tĂ« tilla si krijimi i kontejnerĂ«ve, montimi i katalogĂ«ve dhe kalimi i porteve rrjet. Seanca tĂ« ndryshme janĂ« strikt tĂ« izoluara nga njĂ«ra-tjetra dhe punojnĂ« nĂ« procese tĂ« ndryshme. Ădo seancĂ« lidhet me njĂ« ruajtje tĂ« veçantĂ« VHD, e vendosur nĂ« katalogun %AppData%\Local\wslc\sessions. ĂshtĂ« e mundur tĂ« montohet nĂ« kontejnerin Linux rrugĂ«t Windows pĂ«r qasje tĂ« pĂ«rbashkĂ«t nĂ« skedarĂ«.

Burimi: opennet.ru
