- 1、本文档共24页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基於VT-x的处理.ppt
基於VT-x的處理器模式轉換機制研究 * 張力升 Dept. of Electrical Engineering National Cheng Kung University Tainan, Taiwan, R.O.C 2013.07.16 摘要 為降低虛擬化環境中處理器模式轉換帶來的開銷,研究了基於VT-x技術的處理器模式轉換機制。 根據客戶機操作系統在不同階段的運行狀態,分析了相應的處理器模式轉換過程。 採用客戶機作業系統最小等待的基本思想,結合VT-x處理器提供的虛擬機器擴展功能,設計出了處理器模式轉換的整體流程。 實驗結果表明,VT-x技術可以有效輔助處理器模式轉換,簡化虛擬機器監控器設計。 * 1. 引言 目前基於x86平臺的虛擬機器監控器(VMM)有純軟體和硬體輔助兩種實現方式 純軟體方式在性能上存在巨大開銷而逐步被淘汰,主流的虛擬機器監控器多採用硬體輔助方式。 與傳統的純軟體虛擬化相比,VT-x技術提供的管理結構和模式轉換機制能夠滿足客戶機作業系統對處理器的自然需求,為客戶機作業系統提供更為透明的虛擬化環境。 本文圍繞構造滿足客戶機作業系統需求的處理器環境,在VMM的設計中採用了客戶機作業系統最小等待的基本思想,對處理器模式的初次配置和轉換過程進行了簡化並給出了整體流程,最後就相關問題進行了討論。 * 2.1客戶機作業系統與處理器模式(1/7) 理想情況下,處理器為客戶機作業系統提供的運行環境應該滿足幾個方面的要求: 完整的處理器特權級:純軟體實現的VMM無法滿足 可變的處理器模式:純軟體實現的VMM需要構造較為複雜的資料結構才能完成模式轉換而且效率低下 受限的客戶機作業系統行為:要麼修改客戶機作業系統源碼,不然由VMM對指令進行動態捕獲。 總之,純軟體方式不能高效的實施虛擬化,需要在硬體層次上提供一定的支援。 * 2.2 VT-x技術介紹 (2/7) Intel採用VT-x技術對傳統的處理器進行了擴展,以在硬體上輔助實施虛擬化,擴展包含3個方面: (1)VMx操作模式: VT-x處理器增加了VMX操作模式,包括VMX根模式\和VMX非根模式。VMM運行在VMX根模式下,客戶機操作系統運行在VMX非根模式下。 從VMX根模式到VMX非根模式的轉換由指令顯式控制,稱為虛擬機器進入(VM entry);從VMX非根模式到VMX根模式的轉換由某些指令和事件觸發,稱為虛擬機器退出(VM exit)。 客戶機作業系統在VMX非根模式下的某些行為會產生退出,因此它的功能受到了限制,達到硬體輔助虛擬化的目的。 VMX模式下的進入退出如圖1所示。 * 2.2 VT-x技術介紹 (3/7) * 2.2 VT-x技術介紹 (4/7) (2)VMCS管理結構: VMCS(virtual.machine control data structure)是專門為VMX操作定義的管理結構[7],用於管理虛擬機器的進入和退出,同時管理處理器在VMX非根模式下的行為。 VMCS資料被劃分成了6個邏輯組[7]: 客戶機狀態域:虛擬機器進入時,處理器狀態從該域中載入;退出時,處理器狀態保存在該域中。 主機狀態域:虛擬機器退出時,處理器狀態從該域中載入。 虛擬機器執行控制域:用於設置退出條件,管理虛擬機器在VMX非根模式下的行為。 虛擬機器退出控制域:管理虛擬機器退出時的行為。 虛擬機器進入控制域:管理虛擬機器進入時的行為。 虛擬機器退出信息域:記錄虛擬機器最近一次退出時的資訊。 在虛擬機器執行流程中,6個域的作用如圖2所示。 (3)VMX指令集:VMX包括5條管理VMX操作的指令和5條管理VMCS的指令,管理VMX的指令主要控制處理器操作模式的轉換,管理VMCS的指令主要完成對VMCS資料結構的初始化、載入以及相關區域的讀寫等操作。 * 2.2 VT-x技術介紹 (5/7) * 2.3 VT-x技術與VMM (6/7) 由於VT-x技術為處理器模式轉換提供了硬體支援,使得VMM相關部分的設計實現發生了變化。 純軟體實現的VMM需要提供複雜的資料結構與控制流程才能完成處理器模式轉換,對特殊的退出事件需要進行動態捕獲,因此實現相當複雜。 採用VT-x技術後,處理器模式轉換不僅取決於VMM的控制,而且也和處理器本身的能力相關。VMM與處理器配合實施虛擬化,簡化了VMM設計。 純軟體VMM和硬體輔助VMM在處理器模式轉換方面的實現對比如表l所示。 * 2.3 VT-x技術與VMM (7/7) ? * 表一 兩種VMM實現對比 ? 純軟體VMM 硬體輔助VMM 控制結構 軟體構造 硬體提供 進入方式 構造任務 指令 退出事件 動態捕獲 預先設定 退出信息 動態分析 硬體提供 3.1 轉換過程分析 (1/5) 從開機加電到客戶機作
文档评论(0)