Чому VirtualBox або VMware не можуть працювати з включеним Hyper-V в Windows 10


58

Я запускаю Windows 10 Pro 64 біт із ввімкненою технологією віртуалізації Hyper-V та Intel VT-x. Коли я намагаюся запустити VirtualBox 64bit, Windows переходить у BSOD. Коли я запускаю VMware, він показує помилку.

Чому VirtualBox і VMware не можуть працювати з включеною Hyper-V? Будь-ласка, поясніть усі ваші деталі, включаючи обладнання та програмне забезпечення. Хочу знати внутрішню причину цієї помилки.

Ось деякі мої висновки. Більшість сайтів пропонують додати запис завантаження за допомогою BCDedit або відключити Hyper-V за допомогою BCDedit. наприклад, Створення завантажувального запису "без гіпервізора" , запустіть Hyper-V та VirtualBox на одній машині . Але я можу запускати QEMU з Hyper-V . Qemu не показує помилок із Hyper-V і працює безперебійно.


2
Hyper-V не підтримує вкладену віртуалізацію (з апаратним прискоренням). Однак за звичайних обставин він не впаде. VirtualBox скаржиться, що він не може приймати гостей x64, і все. Отже, щось інше не так, як несправний драйвер пристрою чи що завгодно.
Даніель Б

Я бачу, це дійсно крах. Однак знову ж таки: це не нормально. Збій ніколи не буває нормальним. Здається, це помилка в Hyper-V. Ймовірно, ви повинні зв’язатися з Microsoft про це.
Даніель Б

Варто зазначити, що QEMU не є гіпервізором. Hyper-V робить підтримку вкладену віртуалізацію.
Рамхаунд

Відповіді:


67

VirtualBox і VMware Workstation (і VMware Player) - це "гіпервізори 2 рівня". Hyper-V та VMware ESXi - це "гіпервізори 1 рівня".

Основна відмінність полягає в тому, що гіпервізор рівня 2 - це програма, що працює всередині існуючої ОС, а гіпервізор першого рівня - сама ОС.

Це означає, що при включенні Hyper-V ваш "10" хост Windows став віртуальною машиною. Особлива, але, тим не менш, віртуальна машина.

Тож ваше запитання було б доречнішим: "Чому VirtualBox і VMware Workstation не працюють у віртуальній машині Hyper-V?" Можна відповісти, тому що, як VM, інструкція Intel VT-X більше не доступна з вашої віртуальної машини, лише хост має доступ до неї.

QEMU працює тому, що робить не віртуалізацію, а емуляцію, що зовсім інше і пояснює, чому QEMU болісно повільний. Віртуалізація - це процес запуску повної ізольованої машини всередині іншого, але за допомогою процесора. Для цього потрібна віртуальна машина та хост, які мають інструкції сумісні.

Емуляція - це процес запуску будь-якої машини всередині операційної ОС, обмеження на платформі немає, і тому QEMU може запускати машину ARM на платформі amd64.

Примітка: QEMU має 2 режими роботи:

  • він може працювати як емулятор, саме цей режим пояснено вище
  • він може працювати як програмне забезпечення для віртуалізації за допомогою KVM, якщо гостьова архітектура сумісна з хост-сервером і, звичайно, присутня інструкція VT.

1
Віртуалізація створює цілу "підроблену" систему, за винятком процесора, де гіпервізор обмежує лише час процесорного часу, який може використовувати vm. Таким чином, ви можете віртуалізувати руку лише на хості arm, x86 на хості x86 / amd64, amd64 на хості amd64 тощо. Емулятор перекомпілює кожну інструкцію для двійкового файлу, складеного для певної платформи для роботи на іншій платформі. QEMU належить до того ж сімейства, що і консольні емулятори, наприклад (psx, дельфін, virtualboy, project64, MAME ...)
Veovis,

Віртуалізація (так, не емуляція) була доступна задовго до того, як стала доступною віртуалізація за допомогою апаратних засобів. Її можна вкласти за бажанням.
Даніель Б

2
Чому VirtualBox не може скористатися "Nested VT-x / AMD-V"? Це обмеження обладнання? Hyper-V?
user643011

21

Починаючи з збірки Windows Redstone 4, QEMU зможе працювати під Hyper-V, використовуючи платформу API Hypervisor Platform .

Прискорювач платформи Windows Hypervisor Platform (WHPX) інтегрується до патчів QEMU, які подаються на об'єднання .

API платформи Windows Hypervisor буде включено до складання Redstone 4

Експериментальна підтримка WHPX включена до QEMU 2.12

Оновлення: Virtualbox 6.0 додала підтримку WHPX Virtualbox 6.0 .

Оновлення 2: VMWare додасть підтримку WHPX у майбутній версії VMWare Workstation та fusion. Робоча станція VMware та Hyper-V - спільна робота


3
Цей API в теорії може бути використаний також VMWare і VirtualBox.
Рамхаунд

@Ramhound Чи можна це зробити за допомогою VirtualBox або VMware? У цій статті згадується лише qemu.
Бісвапріо

@Biswapriyo Я визначив, що VMWare та VirtualBox можливі безпосередньо з документації. Однак VMWare та VirtualBox повинні були внести необхідні зміни у свою програму
Ramhound

Чи можете ви пояснити, чим це відрізняється від Nested VT-x / AMD-V?
user643011

Підтримка Virtualbox 6.0 'WHPX - це дуже альфа-якість. Це ледве працює прямо зараз.
user643011
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.