接前一篇文章:
本文内容参考:
《趣谈Linux操作系统》 —— 刘超,极客时间
《QEMU/KVM》源码解析与应用 —— 李强,机械工业出版社
《深度探索Linux系统虚拟化原理与实现》—— 王柏生 谢广军, 机械工业出版社
特此致谢!
三、KVM模块初始化介绍
2. KVM模块初始化
本回开始对于kvm_init函数进行解析。首先贴出Linux 6.1.10内核版本下该函数的源码,在Linux内核源码根目录/virt/kvm/kvm_main.c中,代码如下:
int kvm_init(void *opaque, unsigned vcpu_size, unsigned vcpu_align,
struct module *module)
{
struct kvm_cpu_compat_check c;
int r;
int cpu;
r = kvm_arch_init(opaque);
if (