硬件虛擬化 之VMCS結構
/* VMCS結構: * 1. Guest-state area: //客戶機狀態域(如vmware) , 進入VMM時保存 離開VMM時恢復 Cr0, Cr3, Cr4 Dr7 Rsp, Rip 或對應的32位寄存器 所有段選擇子(包括16位選擇子號,段基址,訪問權限,段大小) GDTR,LDTR 以下MSR: IA32_DEBUGCTL IA32_SYSENTER_CS IA32_SYSENTER_ESP & EIP IA32_PERF_GLOBAL_CTRL IA32_PAT IA32_EFER SMBASE寄存器 Activity State(32bit) //CPU活動狀態 0: Active //活動中 1: HLT //正在執行HLT指令 2: ShutDown //由於3次錯誤,導致關機 3: Wait-for-SIPI //等待主虛擬CPU,發送啟動Startup-IPI Interruptibility State(32bit) //可中斷性狀態 bit[0]: Blocking by STI //表示STI屏蔽目前生效中 bit[1]: Blocking by mov SS //表示MOV SS屏蔽目前生效中 bit[2]: Blocking by SMI //表示SMI屏蔽目前生效中 bit[3]: Blocking by NMI //表示NMI屏蔽目前生效中 bit[31:4]: 0 //保留位, 非零會錯誤 Pending debug Exceptions(64/32bit) bit[3:0]: B3-B0 // 每一位表示對應的斷點狀態, DR7沒有設置為會陷入VMM狀態 bit[11:4]: 保留位 // 清零, 非零則VM entry失敗 bit[12]: enabled bp // 表示最小有一個或多個數據斷點或I/O斷點 斷下 並且他已在DR7激活 bit[14...