Qual é a diferença entre o Windows Subsystem para Linux (WSL), o Cooperative Linux (coLinux) e o Cygwin?

3

Alguém ainda se lembra do coLinux? Eu lembro que ele é usado para o SpeedLinux e Portable Ubuntu há alguns anos.

Está bem claro o que o coLinux está fazendo, rodando o Linux em cima do Windows de alguma forma, mas pode usar uma partição linux real. Enquanto isso, o cygwin está recompilando aplicativos linux para usar no Windows.

Mas o WSL? a WSL está mais próxima do coLinux ou do Cygwin?

    
por Rinaldo Jonathan 24.09.2018 / 01:33

1 resposta

2

A WSL estaria mais próxima do coLinux do que do Cygwin.

Tenha em mente que Unix, POSIX e Linux são coisas diferentes .

O Cygwin é uma camada de compatibilidade POSIX que é executada sobre o subsistema Win32 . Não tem nada a ver com Linux ; ele pode ser amplamente tratado como "apenas outro tipo Unix", em que os programas de portabilidade requerem recompilação e possivelmente modificação de fonte, e qualquer coisa que exija recursos não específicos de POSIX para Linux provavelmente não funcionará.

A WSL foi projetada para ser ABI - compatível com o Linux. Não não usa o kernel real do Linux, mas é compatível de modo que os programas compilados para o Linux possam ser executados sem recompilação ou tradução. O WSL faz parte do kernel do NT, portanto, existe independentemente do subsistema Win32. Isso é semelhante ao antigo SUA, embora fosse um subsistema POSIX (não Linux!) No topo do kernel do NT.

O coLinux executa um kernel Linux real (embora modificado). No lado do Windows, existe como um driver que fornece gerenciamento de memória e acesso de E / S. Conceitualmente, está mais próximo de uma máquina virtual, embora com uma integração mais próxima entre host e "guest".

Do ponto de vista de um programa, tanto o WSL quanto o coLinux parecem aproximadamente o mesmo que um kernel Linux real rodando em hardware bruto. WSL (atualmente) tem mais limitações e peculiaridades, mas também tem suporte e wotks primários (Microsoft) em x86_64. O coLinux é um verdadeiro kernel do Linux, então se comportará como o Linux, enquanto o WSL é uma implementação de sala limpa da ABI.

O Cygwin não parece mais próximo do Linux do que, digamos, o FreeBSD faz.

    
por 24.09.2018 / 01:53