- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
该文档均来自互联网,如果侵犯了您的个人权益,请联系我们将立即删除!
基於Intel VT—x的VMM架構 * 張力升 Dept. of Electrical Engineering National Cheng Kung University Tainan, Taiwan, R.O.C 2013.07.16 摘要 電腦硬體性能的迅速增強使得通過虛擬化技術建立多個相互隔離的計算域成為未來個人電腦的一種重要發展趨勢 作者設計並實現了基於Intel VT-x技術的VMM架構- Pcanel/V2 該架構利用最新的硬體虛擬化技術,通過配置出一個可控制的虛擬運行環境,可以直接虛擬運行多個不修改原始程式碼的客戶作業系統. Pcanel/V2實現了Linux和Vxworks的同時運行,相應的資料測試表明Pcanel/V2架構在簡化了VMM設計複雜度的同時總體運行效率比軟體虛擬化技術提高了約10%. * 1. 引言 虛擬化技術可以提高電腦物理資源的利用率和共用率,並且為提高系統的可靠性、操作性、安全性和即時服務品質提供了新的途徑. 因為原有IA-32架構的設計原因,大大增加了VMM(Virtual Machine Monitor)的設計難度 兩大處理器廠商都推出了硬體的虛擬化技術—Intel的VT技術和AMD的Pacifica技術 Intel VT技術的一個重要的設計目標就是消除半虛擬化和二進位轉化技術,簡化VMM的實現, * 2. Intel VT-x技術簡介 具有VT技術的處理器有兩種運行模式: VMX模式: VMX root操作模式: 其功能與沒有VT技術的IA-32非常相似 VMX non-root操作模式: 提供了一個選擇性的IA-32環境,設計用來支持虛擬機器 非VMX模式: 和不具備VT技術的處理器運行方式完全相同 VT技術定義: VMX root操作模式 VMX non-root操作模式:VM entry VMX non-root操作模式 VMXroot操作模式: VM exit 這兩種轉換被叫做虛擬機器控制結構(virtual—machine control structure VMCS)的一個資料結構控制. VMCS包括一組客戶機狀態(guest-state area)和一組主機狀態(host—state area),兩種狀態都對應著處理器不同組件的值 * 3. 總體設計 (1/2) Pcanel/V2的設計思想有以下3條原則: 在虛擬機器中運行的Guest OS不需要改變原始程式碼. 充分利用VT技術提供的各項功能,減少設計複雜度. 盡可能利用Guest OS 而不是Pcanel /V2來處理操作系統運行過程中遇到的各種情況 Pcanel /V2的總體架構圖如圖1所示. Pcanel /V2運行在VMX root操作模式的特權級0上 Guest OS (例如 Linux),運行在VMX non-root操作模式的其所設計希望運行的特權級上(一般為特權級0和3) * 3. 總體設計 (2/2) * 4. 運行時狀態轉換(1/2) 圖2顯示了Pcanel/V2的運行流程 ①開機初始化後Pcanel/V2判斷處理器是否支援VT技術,如果不支援就進入非MVX模式運行. ②否則可以進入到VMX模式. ③在進行了VMCS的配置之後,就可以通過VM entry進入到Guest OS運行. ④Guest OS運行過程中,如果遇到異常,或者資源訪問等情況就會導致VM exit. ⑤Peanel/V2會對各種情況進行相應的處理後再返回到Guest OS運行. 系統穩定後在④和⑤之間不斷切換 * 4. 運行時狀態轉換(2/2) * 5. VMCS的配置 (1/2) VMCS的配置是整個Pcanel/V2設計的關鍵,它控制了VMX root . VMX non-root之間的相互轉換,以及在VMX non-root操作模式中的處理器行為 如果有多個Guest OS共同運行,則每個Guest OS對應著一個VMCS並受其控制 VMCS中的資料可以分為6組,所有域的值都是在VMX root操作模式下通過VMWRITE指令寫入的,Pcanel/V2對這6組資料欄進行了如下: Guest-state域: 當VM entry時,會將guest—state域中的資訊導入至處理器的各狀態;當VM exit時,處理器的各個狀態會保存到guest—state域中 Host-state域:每次VM exit後,通過導入host—state域值進入到相同的處理環境中來對導致VM exit的各種原因進行處理. * 5. VMCS的配置 (2/2) VM - execution control域.控制處理器在VMX non-root操作模式時的各種行為.決定了何種情況下會導致VM exit.承之
文档评论(0)