qemu-kvm如何与kvm模块交互?

问题描述 投票:0回答:3

我正在尝试阅读 qemu-kvm 和 kvm 模块,但很难理解以下内容:

How does qemu-kvm interact with kvm kernel module?

任何解释或指示将不胜感激。

qemu kvm
3个回答
6
投票

qemu-kvm 通过

ioctl
类型与 KVM 交互(reference):

  • KVM_CREATE_VM
    ioctl,发送到
    /dev/kvm
    的文件描述符,创建一个 VM 文件描述符。
  • 发送到VM文件描述符的
    KVM_CREATE_VCPU
    ,创建一个VCPU文件描述符。
  • 发送到 VCPU 文件描述符的
    KVM_SET_REGS
    ioctl 初始化寄存器。

更多信息通过

mmap
-ing VCPU 文件描述符在QEMU 和KVM 之间传递。最后,来宾运行发送到 VCPU 文件描述符的
KVM_RUN
ioctl,直到内核需要 QEMU 做一些事情(通常模拟一些虚拟硬件)。


0
投票

它使用

ioctl()
,关于这里的ioctl类型的更多细节


-3
投票

这里有一份关于 qemu-kvm 如何与 KVM 交互的简短文档:

https://insujang.github.io/2017-05-02/kvm-internal-how-a-vm-is-created/

© www.soinside.com 2019 - 2024. All rights reserved.