概述
内存虚拟化功能是通过qemu-kvm和qemu-system提供,他们是KVM和QEMU的核心包
KVM通过内存虚拟化共享物理系统内存,动态分配给虚拟机,如下图所示
为了在一台机器上运行多个虚拟机
- KVM需要实现VA(虚拟内存)→ PA(物理内存)→ MA(机器内存)之间的地址转换。
- 虚机OS控制虚拟地址PA(物理内存)→ MA(机器内存)之间的地址转换。
- 虚机OS控制虚拟地址到客户内存物理地址的映射(VA →PA),但是虚机OS不能直接访问实际机器内存
- 因此KVM需要负责映射客户物理内存到实际机器内存(PA → MA)
内存也是可以overcommit的
- 即所有虚机的内存之和可以超过宿主机的物理内存。但使用时也需要充分测试,否则性能会受影响
最后
以上就是忧心板栗为你收集整理的每天5分钟玩转openstack跟学(三)KVM虚拟化原理之内存虚拟化的全部内容,希望文章能够帮你解决每天5分钟玩转openstack跟学(三)KVM虚拟化原理之内存虚拟化所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复