Проблема: Как известно,
не все программы под windows имеют свои аналоги в Линукс, и часто эти
программы бывают очень нужны. Требуется запуск их в Линукс.
1.1 CodeWavers CrossOver Office
Решение:
Есть класс программ, позволяющих запускать программы других
операционных систем (не обязательно виндовс) в Линукс и других *никсах.
Среди них следует выделить наиболее часто применяемые.
1. WINE
opensource, GPL.
Wine
Is Not a (CPU) Emulator - никакой не эмулятор, а свободная реализация
Windows API, которая позволяет запускать программы виндовс, переводя
вызовы программы под виндовс в вызовы Линукс. Это позволяет выполнять
программы почти на полной скорости. Однако из-за того, что продукты M$
являются закрытыми, невозможно точно воспроизвести структуру их API,
что приводит к разного рода сбоям и странностям при выполнении виндовых
программ в WINE. Положительным моментом является то, что вам не нужно
ставить виндовс - только WINE и программу.
Плюсы:
достаточно быстрая работа на реальных ресурсах машины, работа с
реальными каталогами и файлами, нет необходимости ставить винду.
Минусы: не все приложения поддерживаются и работают не всегда стабильно.
Ссылки:
http://www.winehq.org
http://gazette.linux.ru.net/team/a_kuprin.html
http://linuxshop.ru/linuxbegin/print633.html
closedsource.
Основанный
на WINE коммерческий продукт, отличающийся лучшим исполнением особенно
важных виндовых приложений, таких как Adobe Photoshop, M$ Office,
Autodesk AutoCAD и некоторых других. В общем, более стабильная, хотя и
не самая свежая версия WINE, с графическим установщиком, который
предоставит вам удобный и простой интерфейс для настройки.
Ссылки: http://www.codeweavers.com
proprietary, но есть возможность скачать исходники.
Так
же основанный на WINE, но имеющий одно очень существенное, особенно для
геймеров, усовершенствование - он содержит в себе улучшенную, вдобавок,
полную (в плане совместимости) поддержку интерфейса Direct3D.
Ссылки: http://www.transgaming.com
2. DOSEMU
opensource, GPL.
dosemu -
эмулятор DOS для запуска старых приложений, часто используется для
бухгалтерских и прочих весьма специфичных нужд. Многие программы под
DOS использовали его "особенности" и баги для работы, которых в dosemu
может не оказаться.
Плюсы: быстрый запуск и работа устаревших, но нужных приложений (бухгалтерских, например), не требователен к ресурсам.
Минусы: нетривиальная установка, не все программы будут работать.
Ссылки: www.dosemu.org
3. Win4Lin
closedsource.
В
файл, который для виндовс будет диском, ставится полноценная копия
виндовс и потом туда ставятся нужные приложения. Старая версия Win4Lin позволяла
запускать вин9х с очень приличной скоростью и работать с приложениями
для этих систем в виндовс, однако для этого требуются патчи на ядро.
Патчи есть далеко не для всех версий ядер, и для определённых версий Win4Lin патчи были свои - нужно было угадывать.
Win4lin PRO
не требует патча, позволяет запускать виндовсНТ (2000/ХП) но работает
медленно и при этом подгружает служебные программы для "ускорения".
Есть подозрения,
что в этом эмуляторе используются наработки автора QEMU и особенно его
ускоряющего модуля. Особенностью этого эмулятора является то, что есть
возможность работать с реальными каталогами Линукс.
Плюсы: возможность запуска виндовс.
Минусы: проблемы
с накладыванием патчей на ядро (закрытых и возможно небезопасных), либо
очень низкая скорость запуска ЗлаNT, необходимость устанавливать
виндовс, невозможность эмуляции других ОС.
Ссылки:
http://www.win4lin.com/
http://www.netraverse.com/
http://sys.net.ru/docs/win4lin/Win4Lin6/
http://sys.net.ru/docs/win4lin/win4lin2debian
4. Полные эмуляторы
Имитируют
весь компьютер с жёстким диском в виде файла. Установленная туда ОС
будет работать с реальным железом только через эмулированное.
4.1 QEMU
opensource, GPL.
QEMU
- полный эмулятор, имитирует компьютер целиком, возможна эмуляция
других архитектур. Туда можно поставить почти любую ОС - любой виндовс
(начиная с 95 до ХП включительно), любой дистрибутив Линукс или БСД,
BeOS/Haiku, ReactOS, Syllable и проч. Работает очень стабильно. Для
быстрой работы нужен kqemu -
ускоряющий модуль (так же под GPL), который имеется на сайте автора.
Для этого потребуются заголовки ядра - в основном, чтобы собрать
ускоряющий модуль kqemu, с
которым замедление работы гостевой ОС составит до 1.5 раза (вместо 5-10
раз без модуля). Этот эмулятор использует наработки другого проекта, BOCHS.
Так же позволяет создавать виртуальные машины собственной утилитой
qemu-img. Работа с эмулятором (вызов, задание параметров) происходят в
консольном режиме, но есть и графические оболочки.
Плюсы:
хорошая скорость работы (с kqemu) гостевой ОС, стабильность, широкие
возможности (эмуляция нескольких платформ, одновременный запуск
множества систем, точность эмуляции), защищённая среда.
Минусы: несколько меньшая скорость эмуляции, чем VMware, консольный интерфейс (хотя есть графические оболочки типа Qemulator).
Ссылки:
форум о QEMU
www.qemu.org
Установка в Дебиан (на английском)
4.2 BOCHS
opensource, GPL.
BOCHS
- полный точный эмулятор x86 платформы. Имеет свой BIOS, VGABIOS и
прочее, что и используется QEMU. Очень точный, но очень медленный,
применяется в основном разработчиками, где нужна уверенность, что это
сбой в программе, а не эмулятора.
Плюсы: полная точная эмуляция x86, возможность установки в него практически любой ОС, лёгкая и простая установка в Дебиан.
Минусы: очень низкая скорость работы гостевой ОС.
Ссылки:
www.bochs.org
4.3 VMWare
closedsource.
VMWare - как и QEMU, полный эмулятор. Обладает более высокой скоростью эмуляции, поддерживает большее число ОС. Кроме того, установка VMWare на
Дебиан нетривиальна, хотя имеются deb-пакеты в неофициальных
репозиториях; требуется компиляция закрытых ускоряющих модулей с
заголовками ядра. Есть сообщения, что у VMWare имеются проблемы с полноэкранным режимом. По требовательности к ресурсам мало отличается от QEMU,
потребляя много оперативной памяти и процессорного времени. Возможности
те же: безопасная среда для эмуляции гостевых ОС. Плюс графический
интерфейс для создания виртуальных машин.
Плюсы: более быстрая эмуляция гостевых ОС, есть графический интерфейс для создания виртуальных машин.
Минусы: закрытые проприетарные модули потенциально могут вывести хост-ОС из стабильного состояния.
Ссылки:
http://www.vmware.com/
http://www.nixp.ru/news/6914
http://software.newsforge.com/print.pl?sid=05/04/27/186203
VmWare in Ubuntu
4.4 VirtualBox
opensource, GPL.
VirtualBox - так же полный эмулятор x86, основан на наработках QEMU. Отличается простым графическим интерфейсом и весьма высокой скоростью эмуляции (часто быстрее QEMU) и поддержкой периферии (USB, сеть, FireWire). Точность эмуляции ниже, чем у QEMU (невозможно запускать многие ОС, например BeOS/Haiku, MenuetOS, Syllable). Есть
guest additions, которые позволяют очень нужные вещи, а именно
копи-паст с хост-системы в гостевую (clipboard sharing) и незаметный
захват мыши.
Плюсы: простая установка и настройка, возможно расширение функционала плагинами, широкая поддержка периферии, в ряде случаев быстрее QEMU.
Минусы: при интенсивном использовании графический интерфейс мешает, точность эмуляции менее распространённых ОС не высока.
Ссылки:
http://www.virtualbox.org/
Работа и впечатления
4.4 KVM - Kernel-based Virtual Machine
opensource, GPL.
KVM - это решение полной виртуализации, хотя сам по себе это модуль ядра Линукс. Для работы требуется модифицированная версия QEMU. Для работы требуется поддержка виртуализации процессором.
Плюсы: модуль ускорителя в ядре, простая установка.
Минусы: требуется поддержка виртуализации процессором.
Ссылки:
http://kvm.qumranet.com/kvmwiki
http://inf.by/linux/211/
5. Гипервизоры
5.1 XEN
opensource, GPL.
XEN
- гипервизор, позволяет запускать гостевую ОС как процесс ядра в
хост-системе. Отличается очень низкими накладными расходами (от 2 до 8%
потери производительности гостевой ОС), защитой хост-ОС, а так же
использованием технологий виртуализации современных процессоров. Однако
для того, чтобы использовать его возможности, требуется патч на ядро не
только хост-ОС, но и гостевой ОС, что делает запуск проприетарных
систем внутри очень непростым делом.
Плюсы: потенциально наибольшая достижимая скорость работы гостевой ОС, ниже требования к ресурсам хост-ОС.
Минусы: весьма нетривиальная установка - требуется патч на ядро гостевой ОС.
Ссылки:
http://www.cl.cam.ac.uk/Research/SRG/netos/xen/
http://wiki.xensource.com/xenwiki/XenFaq
http://www.howtoforge.com/book/print/1169
http://xgu.ru/xen/manual/
Источник: http://mydebianblog.blogspot.com/2007/11/blog-post_26.html
Комментарии
Самое главное -- виртуализацию на уровне операционной системы забыли -- OpenVZ (есть и другие продукты, но о них я довольно мало знаю).
Open VZ — технология «лёгкой» виртуализации, позволяющая на одной аппаратной системе держать несколько различных корней Linux с одним ядром (поддерживающим ovz и содержащимся, как правило, на небольшом корне с ограниченным доступом по ssh и без других сервисов). В отличие от «тяжёлых» вариантов вроде Xen, Qemu или VMware, накладные расходы обычно составляют единицы процентов.
Краткий доклад одного из авторов OpenVZ (там 4 страницы всего) о том, что это такое:
http://kir.vtx.ru/lj/openvz-intro-ru.pdf
Dosbox еще забыли. Под ним можно Doom2 запускать :)
А встречались ли кому сравнения производительности различных эмуляторов дос и наличия функционала.
У досбокса, например, она ужасная. А в досему у меня не все получалось запускать.
А запуск в эмуляторе Windows имеет эмуляцию какого размера видеопамять? Например при запуске в Windows эмуляторах других осей максимум что встречалось это 8 мБ.
WINE Is Not Emulator!!! Это прослойка, которая транслирует Win32API в POSIX API, а вызовы DirectX в OpenGL. Т.е. ответ на вопрос: "А запуск в эмуляторе Windows имеет эмуляцию какого размера видеопамять?" звучит как "такого же, какого у Вас на видеокарте".
Вопрос! Я уважаю игру LineAge2. Она требует немалые ресурсы компа. Какой из эмуляторов целесообразно использовать?
Сперва надо попробовать wine. Если она не работает под wine, то остаётся только VirtualBox/qemu/VMWare...
Bosh, QEMU (Эмуляция)
Эмулируется все оборудование компьютера, обрабатываются все команды гостевого кода.
Может быть виртуализована любая вычислительная платформа.
VirtualBox, VMware (Чистая (полная) виртуализация)
Может быть виртуализована вычислительная платформа с той же архитектурой, что и аппаратная система. Например, нельзя виртуализовать архитектуру PowerPC на x86.
Источник: http://virtadmin.ru/obshhee/texnologii-virtualizacii/
Так что выводы делайте сами, а как по мне то "QEMU" превзошел всех!!!
Отправить комментарий