Как qemu-kvm взаимодействует с модулем kvm?

Я пытаюсь читать модули qemu-kvm и kvm, и мне довольно сложно понять следующее:

How does qemu-kvm interact with kvm kernel module?

Приветствуются любые объяснения или указатели.


person jaeyong    schedule 29.10.2013    source источник


Ответы (2)


qemu-kvm взаимодействует с KVM через ioctls. KVM_CREATE_VM ioctl, отправленный в файловый дескриптор для / dev / kvm, создает файловый дескриптор виртуальной машины. KVM_CREATE_VCPU, отправленный в файловый дескриптор виртуальной машины, создает файловый дескриптор VCPU. KVM_SET_REGS ioctl, отправленный файловому дескриптору VCPU, инициализирует регистры. Дополнительная информация передается между QEMU и KVM путем преобразования дескриптора файла VCPU. Наконец, гость работает с KVM_RUN ioctl, отправленным в файловый дескриптор VCPU, до тех пор, пока ядру не понадобится QEMU для выполнения каких-либо действий (обычно имитирующих какое-то виртуальное оборудование).

person Paolo Bonzini    schedule 28.01.2014

Он использует ioctl(), более подробную информацию о типах ioctl см. здесь

person Amos Jianjun Kong    schedule 03.11.2017