Что такое параллельная виртуализация?

Что такое параллельная виртуализация?

Я пытаюсь понять, какие типы виртуализации существуют, и для решения этой задачи я нашел книгу Дицзяна Хуана и Хуэйцзюня У «Мобильные облачные вычисления».

Приведенные ниже отрывки также доступны в Google Books:https://books.google.com/books?id=dupGDgAAQBAJ.

Из раздела 2.2.3, таблицы 2.2, стр. 42:

HAL (полный)

  • Описание:Гипервизор предоставляет полноценную виртуальную машину (с той же вычислительной архитектурой, что и хост), позволяющую немодифицированным гостевым системам работать изолированно.
  • Преимущества:Гибкость в использовании различных версий ОС от разных поставщиков.
  • Недостатки:Гостевая ОС не знает, что она виртуализируется; это может привести к значительному снижению производительности на стандартном оборудовании, особенно для приложений с интенсивным вводом-выводом.

HAL (параллельный)

  • Описание:Гипервизор предоставляет каждому гостю полноценную, но специализированную виртуальную машину (с той же вычислительной архитектурой, что и хост), позволяя модифицированным гостям работать изолированно.
  • Преимущества:Легкий и быстрый, со скоростью, близкой к собственной; продемонстрировала работу в диапазоне накладных расходов 0,5–3,0 %; позволяет ОС взаимодействовать с гипервизором — улучшает ввод-вывод и планирование ресурсов; позволяет виртуализировать архитектуры, которые не поддерживают полную виртуализацию.
  • Недостатки:Требует портирования гостевой ОС для использования гипервызовов вместо чувствительных инструкций. Главное ограничение параллельной виртуализации заключается в том, что гостевая ОС должна быть специально адаптирована для работы поверх монитора виртуальной машины (VMM), хостовой программы, которая поддерживает несколько идентичных сред выполнения. Это особенно влияет на устаревшие ОС с закрытым исходным кодом, которые еще не реализовали параллельные виртуализированные расширения.

Здесь «параллельная виртуализация» выглядит как синоним «паравиртуализации». (Я никогда не слышал термина «параллельная виртуализация» до прочтения книги. Термин «паравиртуализация», с другой стороны, хорошо известен в Интернете.)

Однако в разделе 2.2.2, стр. 39, книга, по-видимому, противоречит предыдущему отрывку:

В третьей классификации виртуализации, представленной в разделе 2.2.3, мы подробно рассмотрим два наиболее популярных решения виртуализации на основе HAL, а именно параллельную виртуализацию (или виртуализацию на базе bare-metal, или виртуализацию типа 1) и виртуализацию на основе хоста (или виртуализацию типа 2).

То есть, подведем итог:

  • Раздел 2.2.3: Параллельная виртуализация — это то же самое, что и паравиртуализация.
  • Раздел 2.2.2: Параллельная виртуализация — это то же самое, что и виртуализация на «голом железе» (или тип 1).
  • Однако, насколько я знаю, паравиртуализация и виртуализация bare-metal (она же Type-1) — это две разные вещи. Не одно и то же.

Вопросы:

  • Правда ли, что 2-й отрывок противоречит 1-му?
  • Правда ли, что паравиртуализация и виртуализация на «голом железе» (или тип 1) — это две разные вещи?
  • Согласны ли вы, что отрывок со страницы 42 правильный, а отрывок со страницы 39 —нетправильно? Как бы вы объяснили отрывок со страницы 39?

решение1

Правда ли, что паравиртуализация и виртуализация на «голом железе» (или тип 1) — это две разные вещи?

Оптимизация гостевых систем с удалением уровней абстракции — это совсем другое дело, чем если бы гипервизор находился поверх операционной системы общего назначения.

QEMU — это эмулятор. Добавьте KVM, и аппаратное ускорение снизит накладные расходы до минимума, фактически сделав его типом 1. Кроме того, KVM имеет паравиртуализированные гостевые драйверы. Тем не менее, и QEMU, и KVM работают на операционных системах общего назначения; вы можете запускать произвольные приложения на своих виртуальных хостах.

Hyper-Vзапускает прямой доступ к оборудованию через привилегированный корневой раздел с Windows. Похоже на тип 2. Тем не менее, слои между гостями и оборудованием минимальны, вы не можете запускать пользовательские процессы вне разделов Hyper-V.

Может помочь схема абстракций. Реализации не сортируются так аккуратно по бинарным категориям, как предполагает тип 1 против типа 2. Такие категории не обязательно измеряют практические соображения, такие как накладные расходы по сравнению с голым железом или безопасность и удобство обслуживания, как можно надеяться, простого гипервизора.


Раннее использование термина «паравиртуализация» встречается вСтатья Денали из Вашингтонского университета. По крайней мере,бумага Xenцитирует Денали как создателя термина. Я не могу найти никаких доказательств его происхождения от "parallel". Возможно, он был предназначен для обозначения "beside" и "assisting" значений префикса para-.

Связанный контент