ВСЛ будет ближе к coLinux, чем с Cygwin.
имейте в виду, что Unix, POSIX и Linux-это разные вещи.
Cygwin-это уровень совместимости POSIX, который работает поверх подсистемы Win32. Это не имеет примерно ничего общего с Linux; его можно широко рассматривать как "еще один Unix-подобный", где перенос программ требует перекомпиляции и, возможно, модификации исходного кода и всего, что требует non-POSIX Linux-специфические функции, вероятно, не будет работать.
WSL предназначен для ABI-совместимость с Linux собственно. Это делает не используйте настоящее ядро Linux, но это совместимость такое, что программы, скомпилированные для Linux без перекомпиляции или перевод. WSL является частью ядра NT, поэтому существует независимо от подсистемы Win32. Это похоже на более старый SUA, хотя это был POSIX (не Линукс!) подсистема поверх ядра NT.
coLinux запускает реальное (хотя и модифицированное) ядро Linux. На стороне Windows он существует как драйвер, обеспечивающий управление памятью и доступ к вводу-выводу. Концептуально он ближе всего к виртуальной машине, хотя и с более тесной интеграцией между хостом и"гостем".
с точки зрения программы, как WSL, так и coLinux выглядят примерно так же, как реальное ядро Linux, работающее на необработанном оборудовании. WSL (в настоящее время) имеет больше ограничения и причуды, но также имеет поддержку первой стороны (Microsoft) и wotks на x86_64. coLinux - это настоящее ядро Linux, поэтому будет вести себя так же, как Linux, в то время как WSL-это чистая реализация ABI.
Cygwin не выглядит ближе к Linux, чем, скажем, FreeBSD.