La empresa Microsoft En la conferencia Microsoft Build 2019, se presentó la actualizada subsistema WSL2 (Windows Subsystem for Linux), destinada a ejecutar archivos ejecutables de Linux en Windows. Clave de la segunda edición es la entrega de un núcleo completo de Linux, en lugar de una capa que traduce en tiempo real las llamadas al sistema de Linux a las llamadas al sistema de Windows.
La versión de prueba de WSL2 se ofrecerá a finales de junio en compilaciones experimentales. El soporte para WSL1 basado en emulación se mantendrá, y los usuarios podrán utilizarlo junto a WSL2. Para ejecutar el núcleo de Linux en el entorno de Windows, se emplea una máquina virtual liviana que ya se utiliza en Azure.
En el marco de WSL2 para Windows 10, se ofrecerá un componente con el núcleo de Linux 4.19. A medida que se lanzan correcciones para la rama LTS 4.19, el núcleo para WSL2 se actualizará rápidamente a través del mecanismo de Windows Update y se probará en la infraestructura de integración continua de Microsoft. En WSL2 se utilizará el mismo núcleo que se aplica en la infraestructura de Azure, lo que simplificará su mantenimiento.
Todos los cambios preparados para la integración del núcleo con WSL se publicarán bajo la licencia libre GPLv2 y se enviarán a upstream. Los parches preparados incluyen optimizaciones para reducir el tiempo de inicio del núcleo, disminuir el consumo de memoria y mantener en el núcleo el conjunto mínimo necesario de controladores y subsistemas. El núcleo propuesto podrá actuar como un reemplazo transparente de la capa de emulación ofrecida en WSL1. La disponibilidad del código fuente permitirá a los entusiastas, si lo desean, crear sus propias compilaciones del núcleo de Linux para WSL2, para lo cual se prepararán las instrucciones necesarias.
El uso del núcleo estándar con optimizaciones del proyecto Azure permitirá lograr una compatibilidad total con Linux a nivel de llamadas al sistema y habilitar la ejecución sin problemas en Windows de contenedores Docker, además de implementar el soporte de sistemas de archivos basado en el mecanismo FUSE. Además, en WSL2 se ha incrementado significativamente el rendimiento de entrada/salida y las operaciones con el sistema de archivos, que anteriormente era un punto crítico en WSL1. Por ejemplo, al descomprimir un archivo comprimido, WSL2 es 20 veces más rápido que WSL1, y al realizar operaciones
como «git clone», «npm install», «apt update» y «apt upgrade» de 2 a 5 veces.
A pesar de la entrega del núcleo de Linux, como antes, WSL2 no proporcionará un conjunto listo de componentes para el espacio de usuario. Estos componentes se instalan por separado y se basan en las compilaciones de varias distribuciones. Por ejemplo, para la instalación en WSL en la tienda de Microsoft. compilar , , y . Para interactuar con el núcleo de Linux incluido en Windows, se requerirá la inserción de un pequeño script de inicialización en la distribución, que modifica el proceso de arranque. Canonical ya ha anunciado su intención de proporcionar soporte completo para ejecutar Ubuntu sobre WSL2.
También se puede destacar la compañía Microsoft del emulador de terminal , cuyo código se distribuye bajo la licencia MIT. Junto con el terminal, también se abre el código de la interfaz de línea de comandos original conhost.exe, utilizada en Windows y que implementa la API de Consola de Windows. El terminal proporciona una interfaz con pestañas y ventanas divididas, soporta completamente Unicode y secuencias de escape para salida en color, permite cambiar temas y conectar extensiones, soporta consolas virtuales (PTY) y utiliza DirectWrite/DirectX para acelerar el renderizado del texto. En el terminal se pueden usar las shells Command Prompt (cmd), PowerShell y WSL. Este verano, el nuevo terminal estará disponible para los usuarios de Windows a través de la tienda de Microsoft.
Fuente: opennet.ru
