Почему KVM называется виртуальной машиной на основе ядра?
Я хочу знать, как KVM означает основанную на ядре виртуальную машину. Есть ли какая-то причина? Это из-за того, что "OS" работает над положением ядра, я имею в виду кольцо 0 или уровень 0? Мое предположение правильно или нет? Если нет, то, пожалуйста, объясните, в чем причина?
1 ответ
В 2007 году Intel и AMD создали Intel VT-x и AMD-V для поддержки виртуализации в основном режиме. До этого вся виртуализация в архитектуре x86 проводилась в пользовательском пространстве.
Модели пространства пользователя создали виртуальное кольцо 0 для гостя. Это было очень дорого в вычислительном отношении.
В случае аппаратной виртуализации доступ к ней не может быть получен напрямую из пространства пользователя, поэтому для предоставления интерфейса /dev/kvm клиентам из пользовательского пространства необходим код на стороне ядра.
KVM просто отмечает место, где выполняется тяжелая виртуализация.