KVM

(1 min to read)

基于内核的虚拟机(kernel-based virtual machine),是Linux的一个内核模块,可以让Linux变成一个Hypervisor。

KVM运行在内核空间,提供CPU和内存的虚拟化,可以用于加速QEMU的虚拟化。

1
2
3
4
ioctl(kvmfd, KVM_CREATE_VM, 0); // 创建虚拟机
ioctl(vmfd, KVM_SET_USER_MEMORY_REGION, &mem); // 创建虚拟化内存
ioctl(vmfd, KVM_CREATE_VCPU, 0); // 创建虚拟化CPU
ioctl(vcpufd, KVM_RUN, NULL); // 运行