Почему вино «не эмулятор»?

22

Разве разница между приложениями Windows и приложениями Linux заключается не только в библиотеках, запрашиваемых приложениями? (см. предыдущий вопрос ) Как тогда можно сделать приложения Windows, работающие в системе Linux, программным обеспечением, которое «не является эмулятором»!

запрет
источник

Ответы:

28

Отсюда

Вино не такой эмулятор

Когда пользователи думают об эмуляторах, они думают о таких программах, как Dosbox или zsnes. Эти приложения работают как виртуальные машины и работают медленно, имитируя каждую инструкцию процессора. Wine не выполняет эмуляцию процессора - отсюда и название Wine не является эмулятором.

Некоторые люди утверждают, что поскольку Wine создает дополнительный слой над системой, приложение Windows будет работать медленно. Хотя технически это верно, Wine ничем не отличается от любой другой библиотеки программного обеспечения в этом отношении; даже более новые версии Windows должны загружать дополнительные ресурсы для поддержки старых приложений.

Важно отметить, что комбинация Wine и Unix иногда может быть быстрее, чем сама Windows. Это особенно верно, когда система имеет хорошие драйверы, а приложение не обнаруживает никаких ошибок, связанных с производительностью.

Gnoupi
источник
15

Эмулятор действует совершенно как что-то другое. Эти приложения обычно содержат все, что содержится в исходном приложении или платформе.

Однако Wine действует как переводчик, реализуя только необходимые функции Windows, а также переводя их в инструкции, понятные для X-Windows.

Более практичным примером будет виртуальная машина. При запуске Windows в Linux с использованием виртуальной машины, виртуальная машина эмулирует Windows, так как загружена полная ОС и отсутствует прямое взаимодействие с хостом.

Однако Wine напрямую и в случае необходимости обращается к X-Windows за определенными инструкциями, поэтому для работы приложений в Wine требуется определенный период времени.

Больше можно найти в Википедии здесь .

BinaryMisfit
источник
Ваша вики-ссылка немного не работает
Jonik
Я не понимаю, как виртуальная машина лучше описывается термином эмулятор, чем Wine. Виртуальные машины под управлением Windows не эмулируют Windows, они работают под управлением Windows.
Аарон Франке
8

Wine не эмулирует Windows, а скорее является (или оболочкой для) win32 API для ОС, отличных от Windows.

Йоаким Элофссон
источник
1

Для практических целей Wine - это эмулятор, или, по крайней мере, он делает то, что большинство людей ожидают от эмулятора, даже если технически это не просто эмулятор. Смотрите FAQ для хорошего объяснения . Это также следует великим традициям именования в Unix, ср. GNU не Unix . :-)

Jonik
источник
2
это не традиция UNIX, она называется рекурсивной аббревиатурой
2
К вашему сведению, юмористические рекурсивные аббревиатуры вполне можно считать «традицией» в именовании Unix. Смотрите, например, en.wikipedia.org/wiki/Recursive_acronym ; «В области вычислений ранней традицией в хакерском сообществе (особенно в MIT) был выбор аббревиатур и аббревиатур, которые шутливо относились к самим себе или к другим аббревиатурам».
Джоник
2
это не имеет ничего общего с UNIX
3
Какая? И GNU, и Wine имеют непосредственное отношение к Unix. То же самое можно сказать и о рекурсивных акронимах. Или вы пытаетесь быть чрезмерно «умными» с различием UNIX и «Unix-подобных» систем? вздох Даже в этом случае Unix-подобные системы, такие как GNU / Linux, и программное обеспечение, которое работает на указанных системах, таких как Wine, действительно имеют какое-то отношение к UNIX.
Джоник