原文
https://pic3.zhimg.com/80/v2-8d8eae18a865adc51ecfabd7a50383e6_720w.webp

[译] 100 行 C 代码创建一个 KVM 虚拟机(2019)
- 译者序
- 1 内核 KVM 子系统
- 2
100来行 C 代码创建一个 KVM 虚拟机- 2.1 打开 KVM 设备:
kvm_fd = open("/dev/kvm") - 2.2 创建 VM 外壳:
vm_fd = ioctl(kvm_fd, KVM_CREATE_VM) - 2.3 分配 VM 内存:
mmap() - 2.4 初始化 VM 内存:
ioctl(vm_fd, KVM_SET_USER_MEMORY_REGION) - 2.5 加载 VM 镜像:
open() + read() - 2.6 创建 VCPU:
ioctl(vm_fd, KVM_CREATE_VCPU) - 2.7 初始化 VCPU 控制区域:
ioctl(kvm_fd, KVM_GET_VCPU_MMAP_SIZE) + mmap - 2.8 设置 VCPU 寄存器:
ioctl(vcpu_fd, KVM_SET_SREGS/KVM_SET_REGS) - 2.9 启动 VM:
ioctl(vcpu_fd, KVM_RUN) - 2.10 小结
- 2.1 打开 KVM 设备:
- 3 极简 VM 镜像
- 4 测试
- 5 扩展阅读
- 译文参考资料
评论区