[發明專利]用于虛擬化操作系統的直接存儲器訪問過濾器有效
| 申請號: | 200980124869.4 | 申請日: | 2009-06-05 |
| 公開(公告)號: | CN102077188A | 公開(公告)日: | 2011-05-25 |
| 發明(設計)人: | J·奧辛斯 | 申請(專利權)人: | 微軟公司 |
| 主分類號: | G06F15/16 | 分類號: | G06F15/16;G06F9/44;G06F13/28 |
| 代理公司: | 上海專利商標事務所有限公司 31100 | 代理人: | 黃嵩泉;高見 |
| 地址: | 美國華*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 虛擬 操作系統 直接 存儲器 訪問 過濾器 | ||
背景
計算機產業傾向于越來越多的硬件級虛擬化。在這些環境中,操作系統運行在虛擬機監視器或管理程序之上,其中與計算機硬件的交互由虛擬化層來仲裁。這允許另外稱為來賓操作系統或來賓OS的多個虛擬化操作系統運行在單個計算機上,使得可能在相同及其上運行多個工作負荷,且在它們之間具有強的隔離。這對與IT部門或者要求運行多個工作負荷或多個服務器應用程序的任何操作來說尤其有益。然而,每當所隔離的操作系統與計算機硬件交互以使得虛擬化層必須介入來維護隔離時,虛擬化層引入大的性能懲罰。為解決此性能懲罰,傳統的方法通過允許來賓操作系統直接控制硬件設備來減少了虛擬化層必須介入的交互的數量。然而,準許來賓操作系統直接控制這些硬件設備總是要求準許來賓操作系統對被分配給該來賓操作系統的所有系統存儲器的自由且獨占的控制。通過向來賓操作系統準許獨占存儲器訪問,喪失了虛擬化的許多益處,這些益處包括狀態封裝、遷移和檢查點。
概述
此文獻描述通過允許來賓OS訪問物理硬件設備以執行直接存儲器存取(DMA)傳輸,同時允許過量使用(overcommit)被分配給來賓OS的系統存儲器來提高在管理程序上執行的來賓操作系統(來賓OS)的運行時性能的技術。在一種實現中,虛擬化知曉的DMA過濾器驅動器被插入到非虛擬化知曉的操作系統的I/O驅動器堆棧,從而得到受啟發或半虛擬化OS。響應于應用程序對利用硬件設備進行DMA傳輸的請求,DMA過濾器驅動器可以延遲所請求的傳輸的開始,直到知曉該傳輸的目標來賓物理存儲器被提交(commit)。在一種實現中,過濾器驅動器利用高速緩存來跟蹤來賓物理存儲器的哪些頁被提交而不調用管理程序。在一種實現中,如果過濾器驅動器從高速緩存得知目標來賓物理存儲器頁被提交,那么,過濾器驅動器允許所請求的傳輸立即開始。然而,如果過濾器驅動器從高速緩存得知目標來賓物理存儲器頁中的至少之一未被提交,那么,過濾器驅動器可以請求管理程序支持所有未提交的目標來賓物理存儲器頁。在接收到所有目標來賓物理存儲器頁都被提交的指示之后,DMA過濾器驅動器可以允許所請求的傳輸開始。
在一種實現中,高速緩存另外包括與來賓物理存儲器的每一頁相關聯的引用計數器。在一種實現中,在DMA傳輸開始之前,過濾器驅動器增大與在傳輸期間將潛在地被訪問的來賓物理存儲器的每一頁相關聯的引用計數器。如果來賓物理存儲器頁的引用計數器包括正整數,則管理程序知道挪用該頁以供由另一工作負荷使用可能對供體工作負荷以及系統整體來說是災難性的。然而,如果來賓物理存儲器頁的引用計數器為零,則管理程序可以安全地挪用頁以供由另一工作負荷使用。在一種實現中,一旦傳輸已經完成,過濾器驅動器就可減小與傳輸相關聯的每一頁的引用計數。
在一種實現中,來賓OS可能是不可信的,且不能對來自管理程序的請求作出響應會導致制裁來賓OS。在一種實現中,管理程序可以請求過濾器驅動器重置高速緩存的所有引用計數器。如果工作負荷不能及時地響應管理程序的請求,則管理程序可以終止該工作負荷。
內容的簡要描述
參考附圖描述詳細描述。附圖中,附圖標記最左邊的數字標識其中該附圖標記首次出現的圖。在不同的圖中使用相同的附圖標記指示相似的或相同的項。
圖1描繪被插入到來賓操作系統的I/O驅動器堆棧的說明性的虛擬化知曉的過濾器驅動器。
圖2描繪接收來自應用程序的DMA傳輸請求并將該請求高速緩存在等待列表的說明性的虛擬化知曉的過濾器驅動器。
圖3描繪用于在工作負荷之間共享系統存儲器的說明性系統。
圖4描繪說明性高速緩存,該高速緩存的每一元件都被映射到存儲器的頁。
圖5描繪包括多個驅動器堆棧的來賓操作系統,每一驅動器堆棧都利用單個相同高速緩存。
圖6描繪用于遷移工作負荷的說明性過程。
圖7描繪用于將虛擬化知曉的軟件插入到非虛擬化知曉的操作系統以使得非虛擬化知曉的操作系統當在虛擬機上被執行時展現與當在物理機上被執行時不同的行為的說明性過程。
圖8描繪用于接收存儲器地址范圍、判斷該范圍所指向的存儲器是否常駐、以及如果來賓物理存儲器不常駐,則請求管理程序在傳送存儲器地址范圍之前使其變得常駐的說明性過程。
圖9描繪用于接收對轉換存儲器地址范圍的請求、判斷所請求的存儲器是否常駐、以及如果所請求的存儲器不常駐,則請求管理程序在將該請求傳送給硬件訪問層之前使其變得常駐的說明性過程。
圖10描繪用于創建虛擬化知曉的過濾器驅動器的說明性處理功能性。
詳細描述
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于微軟公司,未經微軟公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200980124869.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種全自動多功能洗浴按摩器
- 下一篇:清潔菜板





