Воскресенье, 26.01.2025, 10:52,
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Виды виртуальных машин
Administrator Дата: Пятница, 26.10.2012, 21:31 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 20
Награды: 1
Репутация: 101
Статус: Offline
Обычно приложения работают в изолированном адресном пространстве и взаимодействуют с оборудованием при помощи интерфейса API (Application Programming
Interface — интерфейс прикладного программирования), предоставляемого операционной системой. Если две операционные системы совместимы по своим интерфейсам API (например, Windows 98 и Windows ME), то приложения, разработанные для одной из них, будут работать и на другой. Если две операционные системы несовместимы по своим интерфейсам API (например, Windows 2000 и Linux), то необходимо обеспечить перехват обращений приложений к API гостевой ОС и сымитировать ее поведение средствами хостовой
ОС. При таком подходе можно установить одну операционную систему и работать одновременно как с ее приложениями, так и с приложениями другой операционной системы.
Поскольку весь код приложения исполняется без эмуляции, а эмулируются лишь вызовы API, такая схема виртуализации приводит к незначительной потере в производительности виртуальной машины. Однако из-за того, что многие приложения используют недокументированные функции API или обращаются к операционной системе в обход API, даже очень хорошие эмуляторы API имеют проблемы совместимости и позволяют запускать не более 70 % от общего числа приложений. Кроме того, поддерживать эмуляцию API бурно развивающейся операционной системы (например, такой как Windows) очень нелегко, и большинство эмуляторов API так и остаются эмуляторами какой-то конкретной версии операционной системы. Так, в Windows NT/2000 до сих пор встроен эмулятор для приложений OS/2 версии 1.x. Но самый большой недостаток ВМ с эмуляцией API гостевой ОС — это ее ориентация на конкретную операционную систему.

Примеры продуктов, выполненных по технологии эмуляции API гостевой ОС:

1) Проект с открытым кодом Wine (Wine Is Not an Emulator, «Wine — это не
эмулятор»), позволяющий запускать DOS-, Winl6- и Win32-пpилoжeния
под управлением операционных системам Linux и Unix;
2) Продукт Win4Lin компании Netraverse, позволяющий запускать операционные
системы семейства Windows под управлением операционной системы Linux;
3) Проект с открытым кодом DOSEMU, позволяющий запускать DOS-приложения
под управлением операционной системы Linux;
4) Проект с открытым кодом User Mode Linux (UML), позволяющий запусксть
несколько копий операционной системы Linux на одном компьютере (в настоящее время встроен в ядро Linux версии 2.6);
5) Технология Virtuozzo, разработанная российской компанией SWsoft и позволяющая запускать несколько копий операционной системы Linux на одном
компьютере.
  • Страница 1 из 1
  • 1
Поиск:

Бесплатный хостинг uCoz