Intel VT-X簡介
時間:2022-02-28 11:05:01 | 來源:信息時代
時間:2022-02-28 11:05:01 來源:信息時代
VT-x是intel運(yùn)用Virtualization虛擬化技術(shù)中的一個指令集,是CPU的硬件虛擬化技術(shù),VT可以同時提升虛擬化效率和虛擬機(jī)的安全性,在x86平臺上的VT技術(shù),一般稱之為VT-x,而在Itanium平臺上的VT技術(shù),被稱之為VT-i。
VT-x有助于提高基于軟件的虛擬化解決方案的靈活性與穩(wěn)定性。通過按照純軟件虛擬化的要求消除虛擬機(jī)監(jiān)視器(VMM)代表客戶操作系統(tǒng)來聽取、中斷與執(zhí)行特定指令的需要,不僅能夠有效減少 VMM 干預(yù),還為 VMM 與客戶操作系統(tǒng)之間的傳輸平臺控制提供了有力的硬件支持,這樣在需要 VMM干預(yù)時,將實現(xiàn)更加快速、可靠和安全的切換。
此外,英特爾VT-x 具備的虛擬機(jī)遷移特性還可為您的 IT 投資提供有力保護(hù),并進(jìn)一步提高故障切換、負(fù)載均衡、災(zāi)難恢復(fù)和維護(hù)的靈活性。
VT-x擴(kuò)展了傳統(tǒng)的x86處理器架構(gòu),它引入了兩種操作模式:VMX root operation(根虛擬化操作)和VMX non-root operation(非根虛擬化操作),統(tǒng)稱為VMX操作模式。VMX root operation是VMM運(yùn)行所處的模式,?設(shè)計給VMM/Hypervisor使用,其行為跟傳統(tǒng)的IA32并無特別不同,而VMX non-root operation則是客戶機(jī)運(yùn)行所處的模式,在VMM控制之下的IA32/64環(huán)境。所有的模式都能支持所有的四個Privileges levels。
由此,GDT、IDT、LDT、TSS等這些指令就能正常地運(yùn)行于虛擬機(jī)內(nèi)部了,而在以往,這些特權(quán)指令需要模擬運(yùn)行。 而VMM也能從模擬運(yùn)行特權(quán)指令當(dāng)中解放出來,這樣既能解決Ring Aliasing問題(軟件運(yùn)行的實際Ring與設(shè)計運(yùn)行的Ring不相同帶來的問題),又能解決Ring Compression問題,從而大大地提升運(yùn)行效率。Ring Compression問題的解決,也就解決了64bit客戶操作系統(tǒng)的運(yùn)行問題。
為了建立這種兩個操作模式的架構(gòu),VT-x設(shè)計了一個Virtual-Machine Control Structure(VMCS,虛擬機(jī)控制結(jié)構(gòu))的數(shù)據(jù)結(jié)構(gòu),包括了Guest-State Area(客戶狀態(tài)區(qū))和Host-State Area(主機(jī)狀態(tài)區(qū)),用來保存虛擬機(jī)以及主機(jī)的各種狀態(tài)參數(shù),并提供了VM entry和VM exit兩種操作在虛擬機(jī)與VMM之間切換,用戶可以通過在VMCS的VM-execution control fields里面指定在執(zhí)行何種指令/發(fā)生何種事件的時候,VMX non-root operation環(huán)境下的虛擬機(jī)就執(zhí)行VM exit,從而讓VMM獲得控制權(quán),因此VT-x解決了虛擬機(jī)的隔離問題,又解決了性能問題。