Как гипервизоры виртуализируют высоконастраиваемое оборудование?

514
Mehrdad

Я могу понять, как гипервизоры могут виртуализировать процессоры, диски и т. Д., Поскольку они имеют хорошо опубликованные общие стандарты (например, ATA / SCSI, функции виртуализации x86 и т. Д.), Но как гипервизоры виртуализируют оборудование, такое как графические процессоры, контроллеры Bluetooth, Адаптеры беспроводной локальной сети и т. Д., Которым часто нужны драйверы, прежде чем их можно будет правильно распознать?

0

1 ответ на вопрос

5
Journeyman Geek

Они не Они либо виртуализируют эталонную реализацию (например, конкретную базовую карту на основе VESA), либо очень просто пропускают порты, к которым они подключены, непосредственно к ВМ, и позволяют ей справиться с этим.

Виртуализация - это не создание чего-то нового, просто нарезка того, что уже есть. Keltari 12 лет назад 0
@JourneymanGeek: Но если они проходят через запросы, то как они гарантируют, что использование оборудования виртуальных машин не конфликтует друг с другом? Mehrdad 12 лет назад 0
Ну, практически по определению вы не сможете пройти через устройство более чем в одну систему. Например, в virtualbox я могу создать фильтр для прохождения через USB-устройство, но я не смог запустить два фильтра на одном устройстве одновременно Journeyman Geek 12 лет назад 0
@ Mehrdad Это зависит от устройства. Для USB-устройств, которые они не понимают, гипервизор предоставляет одну гостевую ОС устройству. Они просто не позволяют иметь устройство более чем одному гостю одновременно. Когда им приказывают переключиться, они имитируют разъединение USB, а затем соединение USB, чтобы аккуратно передать устройство. Для графического процессора или сетевой карты гипервизор имеет драйвер для устройства и представляет виртуальное устройство хост-ОС. Гипервизор использует свою собственную логику, чтобы решить, как отразить операции на виртуальных устройствах на физическом устройстве. David Schwartz 12 лет назад 0

Похожие вопросы