Виртуальные машины и эмуляторы

Создан: 30.03.2004
Модиф: 12.07.2018
Иванов Аркадий

 

Виртуальная машина - это совершенно самостоятельный компьютер (со своим процессором, памятью, диском, сетевыми котроллерами, аудио, видео), который работает внутри вашей основной операционной системы на вашем физическом компьютере. Физически его нет - его оборудование эмулируется средствами программы виртуализации, которая работает в вашей ОС - память виртуальной машины берётся из памяти основной, диск виртуальной машины - это файл или диск основной системы, процессор задействуется от основной машины, сетевая, аудио, видео эмулируются. Но работаете вы с ним так, как будто он физически есть - устанавливаете свою отдельную ОС на него, настраиваете видео, аудио, сеть, ... и работаете.
 
Начал я использовать виртуальные машины в первую очередь для того, чтобы дать пользователям Linux-десктопов работать с приложениями WIndows, которых в Linux нет (в первую очередь это грубо привязанные к ОС программы бухгалтерской отчётности). Затем я обнаружил, что это великолепное средство не мучаться с введением в систему больших приложений, которые изрядно перенастраивают её под себя (например почтовой системе Zimbra лучше дать чистую систему, где она будет единственной хозяйкой). А затем я просто стал виртуализировать все сервисы (FTP-сервера, Web-сервера, файловые сервера под SAMBA, терминальные сервера, LDAP, MAIL, шейперы, ....), чтобы больше не болела голова при переустановках систем.
 
Сегодня на одном из серверов моей организации крутится более 10 виртуальных машин, которые выполняют роли терминального сервера для нескольких юзеров, маil-сервер, ftp-сервер, web-сервера, ldap-сервер, dns-сервер, шейперы, файл-сервер, ...
 
Эмулятор - это нечто иное. В вашей системе запускаются программы, предназначенные для работы в другой системе. Мне приходилось и приходится запускать в Linux программы для Windows. Например, в моей организации 8 бухгалтеров/экономистов уже 10 лет работают на Linux-сервере с бухсистемой 1C. Эмулятор wine транслирует запросы Win-программ в запросы к Linux. Также приходилось заставлять работать в Linux FoxPro для SCO Unix  c помощью эмулятора IBCS2.

Я попробовал много вариантов:

 

  1. Виртуальные машины: коммерческая VMWare, бесплатный VMPlayer, BOCHS, VirtualBox и лучший вариант - KVM/QEMU.
  2. Эмулятор DOS - DOSEMU (особенно полезен для FoxPro наследия).
  3. Wine - эмулятор Windows.
  4. WineX - эмулятор Windows с поддержкой DIrectX (ориентирован на игроманов).


В этом разделе я кратко опишу свои наблюдения по этим решениям.