x86虚拟化技术细节

x86虚拟化技术细节


1. CPU虚拟化的目标是使虚拟机上的指令能被正确地执行,而且效率接近物理机。

2. 内存虚拟化的目标是做好虚拟机内存空间之间的隔离,是每个虚拟机都认为自己拥有了整个内存地址,并且效率也能接近物理机。

3. I/O虚拟化的目标是不仅让虚拟机访问到其所需要的I/O资源,而且要做好它们,之间的隔离工作,更重要的是减轻由于虚拟化所带来的的开销。

x86虚拟化技术 全虚拟化 半虚拟化 硬件辅助虚拟化
CPU虚拟化 主要采用优先级压缩(Ring Compression)和二进制代码翻译技术(Binary Translation)。优先级压缩能让VMM和Guest运行在不同的特权级下,对x86架构而言,就是VMM运行在最高特权级Ring 0下,Guest的内核代码运行在Ring 1下,Guest的应用代码运行在Ring 3下。通过这种方式能让VMM截获一部分在Guest上执行的特权指令,并对其进行虚拟化。但是有一些对虚拟化不友好的指令则需要二进制代码翻译来处理,它通过扫描并修改Guest的二进制代码将那些难以虚拟化的指令转化为支持虚拟化得指令。 通过修改Guest OS的代码,使其将那些和特权指令相关的操作都转换为发给VMM的Hypercall(超级调用),且Hypercall支持批处理和异步这两种优化方式,使得通过Hypercall得到近似于物理机的速度。 主要包含Intel的VT-x和AMD的AMD-V两种技术,且这两种技术在核心思想上非常相似,都是通过引入新的指令和运行模式,让VMM和Guest OS分别运行在其合适的模式下。实现方面,VT-x支持两种处理器工作方式:第
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值