A Microsoft acaba de anunciar várias medidas importantes em relação ao Linux e ao recurso Windows Subsystem for Linux (WSL). Em uma nota publicada hoje ((19/05), a empresa informa que será possível executar aplicativos Linux com GUI usando o WSL. O suporte nativo da Microsoft a aplicativos Linux no WSL2 chegará oficialmente ao Windows 10 muito em breve.
O WSL é o kernel Linux em execução no Windows 10. Portanto, é uma máquina virtual. Atualmente, temos que trabalhar sem a GUI. Também precisamos levar em consideração que alguns aplicativos provavelmente não estão funcionando, como um SimpleScreenRecorder que usamos para gravar a tela do PC.
Além disso, a Microsoft também prometeu outras melhorias:
As melhorias no subsistema Windows para Linux (WSL) concentraram-se em ativar a aceleração de hardware, executar um aplicativo GUI do Linux diretamente e facilitar o uso de aplicativos Linux no Windows.
Aqui estão alguns detalhes:
- O suporte adicionado aos fluxos de trabalho de computação da unidade de processamento gráfico (GPU) permite que as ferramentas do Linux aproveitem as GPUs para permitir a aceleração de hardware em muitos cenários de desenvolvimento, como computação paralela e aprendizado de máquina modelos de aprendizado de máquina (ML) e inteligência artificial (AI).
- O suporte para aplicativos da interface gráfica do usuário do Linux (GUI) permitirá abrir uma instância da WSL e executar um aplicativo Linux com a GUI diretamente, sem a necessidade de um servidor X de terceiros. Isso ajudará a executar nossos aplicativos favoritos em um ambiente Linux, como um Ambiente de Desenvolvimento Integrado (IDE).
- Em breve, a WSL oferecerá suporte a uma experiência de instalação simplificada executando o comando “wsl.exe – install”, que tornará mais fácil do que nunca começar a usar aplicativos Linux no Windows.
Microsoft anuncia Direct3D 12 para Linux/WSL2
Também hoje, durante conferência Virtual Build, a Microsoft anunciou, junto ao apoio a aplicativos GUI do Linux com WSL2, que haverá suporte acelerado por GPU.
No H2’2020, a Microsoft oferecerá suporte de computação de GPU para o software WSL2, com foco nos workloads de IA e aprendizado de máquina. Os aplicativos gráficos do Linux também terão suporte nativo no WSL2, embora os detalhes técnicos ainda não estejam claros no momento.
Pelo menos com a maneira como a Microsoft está falando, os aplicativos da GUI do Linux devem “simplesmente funcionar” no WSL2 sem a necessidade de software de terceiros, ao contrário do trabalho anterior da comunidade em obter um servidor X11 trabalhando com o WSL.
Winget para instalar programas do Linux
Do mesmo modo, a Microsoft também anunciou a Visualização do Gerenciador de Pacotes do Windows. Assim, o Winget é um novo utilitário de linha de comando para poder servir como gerenciador de pacotes/instalador de aplicativos semelhante ao APT, DNF etc.
Como parte da introdução da aceleração de GPU para o WSL2, a Microsoft incluirá a porta do Direct3D 12 para Linux.
DirectX for Linux
Parte desse trabalho do DirectX para Linux envolve um novo driver de kernel Linux “DXGKRNL” para expor os adaptadores gráficos do DirectX ao espaço de usuário do Linux por meio da configuração do WSL2. O driver DXGKRNL faz interface com o host do Windows por meio de uma conexão de barramento VM. Várias GPUs serão suportadas.
O trabalho mais interessante está em oferecer ao usuário uma “API D3D12 real e completa” para Linux.
Esta é a API D3D12 real e completa, sem imitações, pretendentes ou reimplementações aqui … este é o negócio real. O libd3d12.so é compilado a partir do mesmo código fonte do d3d12.dll no Windows, mas para um destino Linux.
O suporte atual permite apenas a renderização fora da tela até que o suporte da WSL2 GUI esteja em vigor. Esse suporte também exigirá drivers gráficos do Windows WDDMv2.9.
Microsoft anuncia Direct3D 12 para Linux/WSL2
A biblioteca do Direct3D 12 para Linux será de código fechado. As bibliotecas D3D12 terão código-fonte fechado e serão enviadas como parte do Windows, direcionadas às interfaces do kernel DXGKRNL, essas bibliotecas provavelmente terão pouco valor para o Wine/Proton e similares, a menos que haja uma nova camada implementada para que as interfaces DXGKRNL possam ser aproveitadas para sistemas Linux bare metal.
Por meio dessa implementação do Direct3D 12, é também como o WSL2 oferece suporte ao OpenGL, OpenCL e Vulkan. Recorde-se recentemente que a Microsoft e a Collabora anunciaram seu trabalho para mapear o OpenGL e o OpenCL pelo DirectX 12.
Do mesmo modo, a Microsoft também está trabalhando com a NVIDIA para oferecer suporte ao CUDA no WSL2.
Mais detalhes através deste post no blog.
Além disso, a Microsoft também publicou agora seu driver de GPU virtual para o kernel do Linux. A parte do driver do kernel é de código aberto e, em última análise, eles procurarão integrá-lo. Esse driver do kernel é apenas relevante no contexto de uma instalação de host/WSL2 do Windows e depende do Microsoft Hyper-V.
Ficou interessado? Então, veja:
Como instalar o Windows Subsystem for Linux 2 no Windows 10?