Требуется ли VirtualBox, чтобы ЦП поддерживал VT-d для размещения 64-битных гостевых ОС?
Например, ark.intel.com говорит следующее для конкретного процессора
Я понимаю, что virtualbox требует процессор с поддержкой виртуализации для поддержки 64-битных гостевых ОС. Достаточно ли просто VT-x или нужны, например, и VT-x, и VT-d?
решение1
Поддержка виртуализации для 64-битной гостевой ОС не зависит от технологии Intel VT-d. Для 64-битной гостевой ОС достаточно только VT-x.
VT-d от Intel используется для сквозного ввода-вывода (также называемого сквозным PCI).
ОтВикипедия - виртуализация x86:
Виртуализация MMU ввода-вывода (AMD-Vi и Intel VT-d):
Блок управления памятью ввода-вывода (IOMMU) позволяет гостевым виртуальным машинам напрямую использовать периферийные устройства, такие как Ethernet, ускоренные графические карты и контроллеры жестких дисков, через DMA и перераспределение прерываний. Иногда это называется PCI passthrough
См. также статью Дэвида Отта на темупрограммное обеспечение.intel.com:
На момент написания этой статьи VT-d включает в себя четыре ключевые возможности:
Назначение устройств ввода-вывода. Эта функция позволяет администратору назначать устройства ввода-вывода виртуальным машинам в любой желаемой конфигурации.
Перераспределение DMA. Поддерживает трансляцию адресов для передачи данных DMA устройства.
Перераспределение прерываний. Обеспечивает маршрутизацию виртуальных машин и изоляцию прерываний устройств.
Функции надежности. Сообщает и регистрирует системные программные ошибки DMA и прерываний, которые в противном случае могут повредить память или повлиять на изоляцию виртуальной машины.
Обратите внимание, что VT-d не зависит от VT-x.То есть, система с поддержкой VT-x может работать без VT-d или без включенного или настроенного VT-d. Вы просто упускаете преимущества этой функции.Многие спрашивали об этом моменте.
И вот еще одна ссылка, которая конкретно упоминает, что VT-d не имеет значения, когда речь идет о 64-битных гостевых возможностях в виртуальной машине. Из канонического поста Virtualbox Forum«У меня 64-битный хост, но я не могу установить 64-битные гостевые системы»:
Обычно вам нужно включить VT-x/AMD-v в BIOS хост-компьютера. Вам нужно свериться с руководством по вашему ПК или форумом поддержки, чтобы узнать, как загрузить экран BIOS. Это, вероятно, не то, с чем мы здесь, на форумах VirtualBox, можем вам помочь. Когда вы туда попадете, вам нужно будет поискать что-то, зарытое в меню, возможно, в категории безопасности. Опция может называться как-то вроде «Включить технологию виртуализации».Если вы видите «Virtual Directed I/O» (VT-d/AMD-Vi), то это другое дело.Не забудьте выключить и снова включить хост-компьютер после внесения и сохранения изменений BIOS. В этом случае потребуется полная перезагрузка из выключенного состояния, простая перезагрузка или выход из режима гибернации может не дать результата.