虚拟化学习笔记四——硬件辅助CPU虚拟化技术VT-x

系统虚拟化的核心任务是CPU虚拟化,本篇博客主要介绍kvm中采用的cpu虚拟化技术。

硬件辅助CPU虚拟化技术——VT-x

Intel VT中的VT-x(Intel Virtualization technology for x86)技术扩展了传统的IA32处理器架构,为IA32架构的处理器虚拟化提供了硬件支持。

VMX操作模式

VT-x引入了两种操作模式,统称为VMX操作模式。
1. 根操作模式:VMM运行所处的模式。
2. 非根操作模式:客户机运行所处的模式。

这两种操作模式和IA32特权级0 ~ 特权级3是正交的,即每种操作模式下都有相应的特权级0 ~ 特权级3。

所以在VT-x使用的情况下,描述程序运行在某个特权级,例如特权级0,还必须指出当前是处于根模式还是非根模式。

为什么要引入两种操作模式?

指令的虚拟化是通过“陷入再模拟“的方式实现的,而IA32架构有19条敏感指令不能通过这种方法处理,导致了虚拟化漏洞。

最直接的解决办法,是使这些敏感指令能触发异常——但这种方法会改变这些指令的语义,导致与原有软件不兼容。

为此,就引入了新的模式。

在非根模式下,所有敏感指令(包括19条不能被虚拟化的敏感指令)的行为都被重新定义,使得它们能不经虚拟化就直接运行或通过“陷入再模拟”的方式来处理。

在根模式下,所有指令的行为和传统IA32一样,没有改变,因此原有的软件都能正常运行。

VM-Exit和VM-Entry

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值