В чем разница между подсистемой Windows для Linux (WSL), Cooperative Linux (coLinux) и Cygwin?

кто-нибудь еще помнит coLinux? Я помню, что он используется для SpeedLinux и портативный Ubuntu несколько лет назад.

довольно ясно, что делает coLinux, запуск Linux поверх Windows, но может использовать реальный раздел linux. Тем временем cygwin перекомпилирует приложения linux для использования в Windows.

но WSL? это ВСЛ ближе к coLinux или с Cygwin?

29
задан Rinaldo Jonathan
14.11.2022 22:14 Количество просмотров материала 2750
Распечатать страницу

1 ответ

ВСЛ будет ближе к 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.

2
отвечен Bob 2022-11-16 06:02

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх