处理器虚拟化——VMX

处理器虚拟化——VMXIntel提供3个层面的虚拟化技术(IntelVirtualizationTechnology)  1.基于处理器的虚拟化技术(IntelVT-X)全称为VirtualizationTechnologyforx86  2.基于PCI总线域设备实现的I/O虚拟化技术(IntelVT-D)全称为VirtualizationTechnologyforDirectedI/O  …

处理器虚拟化——VMX

Intel提供3个层面的虚拟化技术(Intel Virtualization Technology)
  1.基于处理器的虚拟化技术(Intel VT-X) 全称为 Virtualization Technology for x86
  2.基于PCI总线域设备实现的I/O虚拟化技术(Intel VT-D) 全称为Virtualization Technology for Directed I/O
  3.基于网络的虚拟化技术(Intel VT-C) 全称为Virtualization Technology for Connectify

  VT 是对资源的虚拟化管理的结果
  在CPU端的虚拟化里 实现了VMX(Virtual-Machine Extensions,虚拟机扩展)架构
  包含两种角色环境 VMM(Virtual Machine Monitor,虚拟机监管者)host
  VM(Virtual Machine,虚拟机)guest
  guest端软件访问的资源受到VMM的监管

VMM通过EPT(Extend Page Table,扩展页表)来实现“guest端物理地址到Host端物理地址”的转化
使得Guest访问到其他的物理区域
在开启EPT机制下 会产生两个地址概念:GPA(Guest Physical Address) 和 HPA(Host Physical Address)
HPA 真正的物理地址

在VMX架构下 至少需要实现一个“VMXON region” 以及 “VMCS region”的物理区域
VMXON区域对应于VMM VMM使用VMXON区域对一些数据进行记录和维护
每个VM需要对应自己的VMCS(VIrtual Machine Structure 虚拟机控制结构)
VMM使用VMCS来配置VM的运行环境 以及控制VM的运行

检测VMX支持
VMX支持 检测CPUID.01H:ECX[5].VMX位来确定是否支持VMX架构 1表示支持

开启VMX进入允许
要开启VMX operation模式 必须先开启CR4.VMXE控制位 1表示开启

VMX root operation模式处理器的CPL(Current Privilege Level) 必须为0 VMM运行的环境
VMX non-root operation VM运行的环境

root ———-> non root VM-entry
non-root ———> root VM-exit

导致VM exit发生的三大类途径如下。
1) 执行无条件引发VM exit的指令。包括CPUID,GETSEC,INVD与XSETBV指令以及所有的VMX指令(除了VMFUNC指令)
2) 遇到无条件引发VM exit的未被阻塞的事件。例如,INT信号,SIPI消息等。
3) 遇到VMM设置引发VM exit的条件,包括执行某些指令或者遇到某些事件发生。

今天的文章处理器虚拟化——VMX分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/27919.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注