Microsoft ha annunciato il sottosistema WSL2 con un kernel Linux standard

Microsoft presentato alla conferenza Microsoft Build 2019 in corso in questi giorni, è stato presentato in questi giorni un sottosistema aggiornato WSL2 (Windows Subsystem for Linux), progettato per eseguire file eseguibili Linux su Windows. Chiave caratteristica La seconda edizione prevede la fornitura di un kernel Linux completo, invece di un livello che traduce al volo le chiamate di sistema Linux in chiamate di sistema Windows.

La versione di prova di WSL2 verrà offerta alla fine di giugno in build sperimentali finestre Insider. Il supporto basato sull'emulatore per WSL1 verrà mantenuto e gli utenti potranno utilizzarlo insieme a WSL2. Per eseguire il kernel Linux in ambiente Windows viene utilizzata una macchina virtuale leggera, già utilizzata in Azure.

Nell'ambito di WSL2 per Windows 10 verrà offerto un componente con un kernel Linux 4.19 standard. Non appena verranno rilasciate le correzioni per il ramo LTS 4.19, il kernel per WSL2 verrà tempestivamente aggiornato tramite il meccanismo di Windows Update e testato nell'infrastruttura di integrazione continua di Microsoft. WSL2 utilizzerà lo stesso kernel dell'infrastruttura di Azure, semplificandone la manutenzione.

Tutte le modifiche preparate per l'integrazione del kernel con WSL saranno pubblicate sotto la licenza GPLv2 gratuita e saranno trasferite all'upstream. Le patch preparate includono ottimizzazioni per ridurre il tempo di avvio del kernel, ridurre il consumo di memoria e lasciare nel kernel il set minimo richiesto di driver e sottosistemi. Il kernel proposto potrà fungere da sostituto trasparente del livello di emulazione proposto in WSL1. La disponibilità dei codici sorgente consentirà agli appassionati, se lo desiderano, di creare le proprie build del kernel Linux per WSL2, per le quali verranno predisposte le necessarie istruzioni.

L'utilizzo di un kernel standard con ottimizzazioni del progetto Azure consentirà di ottenere la piena compatibilità con Linux a livello di chiamata di sistema e fornirà la possibilità di eseguire senza problemi contenitori Docker su Windows, oltre a implementare il supporto per file system basati sul meccanismo FUSE. Inoltre, WSL2 ha aumentato significativamente le prestazioni delle operazioni di I/O e del file system, che in precedenza costituivano il collo di bottiglia di WSL1. Ad esempio, quando si decomprime un archivio compresso, WSL2 è 1 volte più veloce di WSL20 e quando si eseguono operazioni
"git clone", "npm install", "apt update" e "apt upgrade" di 2-5 volte.

Sebbene fornisca ancora il kernel Linux, WSL2 non fornirà un set già pronto di componenti dello spazio utente. Questi componenti vengono installati separatamente e si basano su assemblaggi di varie distribuzioni. Ad esempio, per installare in WSL nella directory di Microsoft Store offerto сборки Ubuntu, Debian GNU/Linux, Kali Linux, SUSE и openSUSE. Per interagire con il kernel Linux offerto in Windows, dovrai sostituire un piccolo script di inizializzazione nella distribuzione che modifica il processo di avvio. Canonical lo ha già fatto egli ha dichiarato sull'intenzione di fornire pieno supporto per Ubuntu in esecuzione su WSL2.

Inoltre si può notare pubblicazione Emulatore di terminale Microsoft Terminale di Windows, il cui codice è distribuito sotto licenza MIT. Insieme al terminale, anche l'interfaccia a riga di comando originale conhost.exe, utilizzata in Windows e che implementa l'API della console di Windows, è open source. Il terminale fornisce un'interfaccia basata su schede e finestre divise, supporta completamente Unicode e sequenze di escape per l'output a colori, consente di modificare temi e abilitare componenti aggiuntivi, supporta console virtuali (PTY) e utilizza DirectWrite/DirectX per accelerare il rendering del testo. Il terminale può utilizzare il prompt dei comandi (cmd), PowerShell e le shell WSL. In estate il nuovo terminale sarà disponibile per gli utenti Windows attraverso il catalogo del Microsoft Store.

Microsoft ha annunciato il sottosistema WSL2 con un kernel Linux standard

Fonte: opennet.ru

Aggiungi un commento