cpu虚拟化(cpu虚拟化怎么开启)

1、Intel硬件CPU虚拟化技术VT-x,引入VMXoperation模式,实现VMM运行在VMX root operation模式,VM运行在VMX non root operation模式。这两种模式的转换称作VMX转换。

2、从VMX root operation模式到VMX non root operation模式称作VM Entry,从VMX non root operation模式到VMX root operation模式称作VM Exit。

3、物理CPU进入VMXoperation模式,需要执行VMXON,在执行VMXON之前VMM需要先分配一个VMXON的区域,用于记录一些数据,并对该区域进行初始化。

4、通过VM Entry,VMM可以使VM进入运行状态,VM首次进入运行状态需要执行VMLAUNCH指令。

5、每个虚拟机对应一个虚拟机控制结构VMCS(Virtual Machine Control Structure),用来保存VM的相关信息,在执行VMLAUNCH前,需要分配VMCS并初始化。

6、VM内部执行特殊指令或发生某些事件时,会导致VM Exit。VM不感知自己处于虚拟化环境,不会主动发生VM Exit,只有当VM的CPU执行预定指令或在VMCS中配置一些事件时才会导致VM Exit,此时VM退出到VMM指定的一个地址,然后VMM开始执行处理VM Exit的事件。

7、VMM通过执行VMXOFF指令退出VMX operation。