Anteriormente conhecido como SFU ou Services for UNIX . É um subsistema de ambiente no Windows, fornecendo total conformidade com POSIX e uma grande carga de ferramentas que normalmente acompanham os sistemas UNIX.
Como um subsistema de ambiente, isso significa que ele é executado junto com a API do Windows, diretamente no topo do kernel. Portanto, não é mais emulado do que a própria API nativa do Windows e, portanto, tem um desempenho muito melhor que o cygwin, por exemplo. 1
Ele se destina principalmente à criação e execução de aplicativos UNIX diretamente no Windows; portanto, se o seu programa UNIX favorito não for fornecido com uma porta do Windows, você poderá tentar construí-lo no SUA:
Os Serviços do Windows para Unix e o Subsistema para aplicativos baseados em Unix fornecem arquivos de cabeçalho e bibliotecas que facilitam a recompilação ou porta de aplicativos Unix para uso no Windows; eles não tornam os binários Unix compatíveis com os binários do Windows. É melhor pensado como uma plataforma distinta semelhante ao Unix.
A versão atual do SFU contém:
- Mais de 350 utilitários Unix, como vi, ksh, csh, ls, cat, awk, grep, kill, etc.
- Compilador GCC 3.3, inclui e bibliotecas (por meio de um MS libc)
- Um wrapper tipo cc para o compilador de linha de comando C / C ++ do Microsoft Visual Studio
- Depurador GDB
- Servidor e cliente NFS
- Um daemon pcnfsd
- Ferramentas e bibliotecas X11
- As ferramentas para criar pontos de montagem NFS aparecem como compartilhamentos do Windows e vice-versa (serviços de gateway)
- Um recurso de servidor NIS vinculado ao Active Directory (AD)
- Algumas ferramentas de sincronização de informações de autenticação do Windows / Unix
O SFU não contém o seguinte (mas os binários estão disponíveis para uma instalação separada):
- bash, OpenSSH, sudo, CVS, ClamAV, bzip2, gmake, curl, emacs, Apache, XView, Ruby, Tcl, Python
(Wikipedia)
Como o SUA não tenta ser Linux ou BSD, mas simplesmente POSIX, isso também pode significar que muitos programas que dependem de coisas específicas da plataforma podem falhar na criação ou execução. Scripts de shell que assumem bash em vez de chamadas de sistema sh ou específicas do Linux vêm à mente. Atualmente, são criados muito poucos programas que podem ser executados diretamente em qualquer sistema compatível com POSIX. Além disso, a versão do gcc incluída é um tanto antiga, o que significa que pode não oferecer suporte à sua mais recente qualidade C99 +.
1 Ele ainda está sujeito a limitações específicas do Windows, como o tempo de inicialização do processo lento, de modo que o bifurcação extrema ainda será muito lento, e é por isso que você esperará muito tempo para que muitos ./configure
scripts ou alguns makefiles sejam executados.