
При тестировании Windows 8 Consumer Preview я установил Hyper-V.
Это было похоже на еще один Windows Virtual PC.
Может ли кто-нибудь объяснить, в чем разница? Есть ли разница в производительности? Есть ли причина выбрать один вариант вместо другого?
решение1
Может ли кто-нибудь объяснить, в чем разница? Есть ли разница в производительности? Есть ли причина выбрать один вариант вместо другого?
Как уже поясняется в другом вашем ответе, между двумя проектами существуют некоторые архитектурные различия.
Грубо говоря, если речь идет о гипервизоре Intel VT, то для активации гипервизора вы запускаете (на ассемблере) специальную последовательность инструкций, завершающуюся VMXON
. Это включает режим гипервизора.
Часть этой работы включает определение виртуальных машин с точки зрения ихрасширенные таблицы страницили эквивалент AMD. Это похоже на обычную задачу настройки таблиц страниц (какая память отображается куда), за исключением того, что вы делаете это для целых областей памяти для виртуальных машин. Предыдущая технология VM просто застрялаVM-выходы для этой целикоторые по сути являются причудливыми аппаратными прерываниями.
Как это относится к архитектуре? Ну, у вас есть два варианта построения гипервизора:
Создайте автономный гипервизор, который настраивает монитор виртуальной машины, а затем ждет гостевые операционные системы. Обычно он либо содержит достаточно собственной операционной системы для управления виртуальными машинами, либо поддерживает привилегированную гостевую систему. Например, гипервизор Xen включает в себя «гостя» «Dom0», который имеет возможность управлять гипервизором.
Создайте гипервизор как часть существующего ядра, например, как модуль ядра. Код может быть установлен как монитор виртуальной машины в Intel VT в любой момент в течение жизненного цикла операционной системы (при наличии достаточных привилегий), а также удален. Таким образом, код гипервизора просто устанавливает необходимое требуемое пространство в памяти по мере необходимости.
На практике, разница для конечного пользователя будет в том, что вы не сможете выгрузить гипервизор, если он первого типа, без перезагрузки. Это потому, что он действует как операционная система сама по себе. Hyper-V действует так — если у вас установлен Hyper-V, вы не сможете установить VirtualBox, например, потому что они не могут совместно использовать пространство монитора виртуальной машины (поскольку Hyper-V уже имеет его). Чтобы выгрузить гипервизор, вам нужно перезагрузиться.
Итак, если говорить проще: если у вас установлен Hyper-V, даже если у вас нет запущенных виртуальных машин, вы не сможете использовать никакой другой продукт виртуализации. Это не относится к Virtual PC.
Теперь о производительности. В системах, подобных Intel VT, то, загружаете ли вы сначала ОС или гипервизор, вряд ли имеет значение с точки зрения производительности, поскольку это область, ограниченная только процессором, и если вы уже используете аппаратную виртуализацию процессора, то вы в любом случае быстры настолько, насколько это возможно.
С точки зрения производительности различия в виртуализации обусловлены такими методами, какпаравиртуализацияи использованиеИММУ/Перераспределение DMAКороче говоря, порядок организации памяти ОС/ЦП не будет иметь такого большого значения, как возможность эффективной виртуализации таких вещей, как жесткие диски, видеокарты и т. д.
Это очень похоже на то,этот пост в блогечто у Hyper-V в прошлом были проблемы с потребительскими аспектами виртуализации: графикой, звуком и т. д. Я не запускал Hyper-V, когда нужны были эти вещи, поэтому не могу сказать, являются ли они все еще проблемой, но, возможно, стоит разобраться.
решение2
Hyper V обеспечит лучшую производительность, чем, скажем, Windows Virtual PC
http://en.wikipedia.org/wiki/Гипервизор
Роберт П. Голдберг классифицирует два типа гипервизоров:[5]
Гипервизоры типа 1 (или собственные, bare metal) работают непосредственно на оборудовании хоста для управления оборудованием и гостевыми операционными системами. Таким образом, гостевая операционная система работает на другом уровне над гипервизором.
Эта модель представляет собой классическую реализацию архитектур виртуальных машин; исходными гипервизорами были инструмент тестирования SIMMON и CP/CMS, оба разработанные в IBM в 1960-х годах. CP/CMS был предком z/VM от IBM. Современным эквивалентом этого является Citrix XenServer, VMware ESX/ESXi и гипервизор Microsoft Hyper-V.
Гипервизоры типа 2 (или размещенные) работают в среде обычной операционной системы. Поскольку уровень гипервизора является отдельным вторым программным уровнем, гостевые операционные системы работают на третьем уровне над аппаратным обеспечением. Примерами гипервизоров типа 2 являются KVM, BHyVe и VirtualBox.
Википедия ясно объясняет это