操作系统虚拟化原理总结篇——VMCS详解

本文详细介绍了VMCS(虚拟机控制结构)的组成,包括版本标识、中止指示和数据域,强调了VMCS在Intel VT_x技术中的作用,用于保存虚拟CPU的状态信息。VMCS数据域分为6个部分,包括客户机状态域、宿主机状态域、VM_ENTRY控制域、VM_EXECUTION控制域、VM_EXIT控制域和VM_EXIT信息域,详细阐述了各域的功能和在虚拟化过程中的角色。
摘要由CSDN通过智能技术生成

1.VMCS的组成

有三部分:偏移0处是版本标识,偏移4处是中止指示,偏移8处是VMCS的数据域,其中第三部分才是我们要考虑的重点。它是被保存在内存中的。


2,为什么要引入VMCS

这完全是由于Intel VT_x来引起的,它主要被CPU进行操作,然后保存着VCPU的相关寄存器的信息和内容。可以这么理解,一个物理CPU通过VMCS能够获得每个虚拟CPU的各种信息。另外VT_x也提供了不少指令用于CPU去直接访问VMCS。


3,VMCS数据域的详细分析:

包含了6个域,客户机状态域,宿主机状态域,VM_ENTRY控制域,VM_EXECUTION控制域,VM_EXIT控制域,VM_EXIT信息域。

下面逐一分析:

客户机状态域用户保存在非根模式下CPU的状态,当发生VM_Entry的时候,CPU自动将客户机的状态保存和加载到CPU中,即表示从VMM的根模式进入非根模式。

当发生VM_Exit的时候 ,CPU自动将CPU的状态保存回客户机状态域。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值