Разница между паравиртуализацией и полной виртуализацией в KVM заключается в подходе к работе с гостевыми операционными системами. 12
Паравиртуализация предполагает, что гостевые ОС специально подготавливаются для исполнения в виртуализированной среде. 1 Для этого незначительно модифицируется их ядро, а гостевая ОС взаимодействует с гипервизором через специальный API. 1 Паравиртуализация не требует специализированного оборудования, но для неё нужна специально модифицированная версия гостевой операционной системы. 2 Некоторые ОС, например Windows, не предлагают такую настроенную версию. 2
Полная виртуализация позволяет использовать обычную, немодифицированную операционную систему в качестве гостевой. 2 Для этого требуется специальная аппаратная поддержка, которая есть в последних процессорах AMD и Intel. 2 Поскольку гостевая ОС не знает, что она виртуализирована, она генерирует обычные инструкции. 2
Таким образом, паравиртуализация лучше подходит, если и процессор, и операционная система поддерживают виртуализацию, так как в этом случае потеря производительности из-за виртуализации сведена к минимуму. 2 Полная виртуализация же подходит, если операционная система не поддерживает паравиртуализацию. 2