新四季網

構建基於分區管理的虛擬存儲設備的計算機系統及方法

2023-05-15 15:17:41 2

專利名稱:構建基於分區管理的虛擬存儲設備的計算機系統及方法
技術領域:
本發明涉及一種計算機虛擬化技術,確切地說,涉及一種構建基於分區管 理的虛擬存儲設備的計算機系統和方法,屬於計算機存儲虛擬化技術領域。
背景技術:
目前,業界廣泛應用的現代計算機的硬體都包含中央處理器(Central Processing Unit )、內存(Main Memory )和存儲設備(Storage )。作為一種現 代計算機,採用x86中央處理器的計算機發展非常迅速,x86中央處理器現在 已經發展到了 64位(被稱為x86_64或x64 )。這類計算機早已突破了個人使 用的範疇,大量進入數據中心和工業控制等產業領域。因為這類計算機都採用 x86 (含x64 )體系結構的中央處理器,人們將這類計算機稱為x86計算機。本 發明也把這些計算機統稱為x86計算機。
X86計算機中,最常見的存儲設備是硬碟(Hard Disk Drive )。硬碟剛出現 時,採用柱面-磁頭-扇區(Cylinder-Head-Sector )尋址方式。由於硬碟不斷發展, 硬碟容量的不斷增大,後來硬碟改進為採用以扇區為單位進行尋址,常用的是 邏輯塊尋址(Logical Block Addressing )方式,這裡不再贅述。x86計算機的硬碟是通過分區管理的,在一個硬碟上可以創建多個分區。 分區管理有很多優勢,例如創建多個分區能夠在不同的分區上安裝相互獨立 的作業系統,從而實現單機的多作業系統支持。分區管理還可以實現數據的分
區存放,在硬碟發生故障時,分區存放的數據可以降低數據損失的範圍。
現在,業界已經對x86計算機上進行硬碟分區和在硬碟上記錄分區信息形 成了標準,分區信息有固定的格式並記錄在硬碟上的特定位置,在本發明中, 將這些標準稱為分區管理規範。x86計算機的硬碟分區管理通常採用兩種規範 基於主引導記錄MBR( Master Boot Record )的分區管理規範和基於全球統一標 識符GUID ( Globally Universal Identifier )分區表GPT ( GUID Partition Table ) 的分區管理規範。其中,基於MBR的分區管理規範還可能使用擴展引導記錄 EBR ( Extended Boot Record )來擴展硬碟支持的分區數量。本發明將只使用 MBR的分區管理和同時使用MBR與EBR的分區管理統一稱為基於MBR或 MBR及EBR的分區管理。
參見圖1 ,介紹最早獲得業界普遍應用的、與x86計算機的基本輸入輸出 系統BIOS ( Basic Input Output System )搭配的基於MBR或MBR及EBR的分 區管理規範。MBR位於整個硬碟的0柱面0磁頭1扇區(可視作硬碟的第一個 扇區)。MBR中的硬碟分區表(Disk Partition Table )有四個記錄硬碟分區信息 的表項。硬碟的分區可以全是主分區,此時這四個表項最多可以記錄四個主分 區的信息;或者硬碟可以含有一個擴展分區,那麼這四個表項最多可以支持三 個主分區和一個擴展分區(如圖1所示)。在擴展分區中使用EBR可以把該擴
展分區進一步劃分為多個邏輯分區。在EBR中的擴展分區表也有四個表項,但 最多只用兩個表項一個表項用於記錄與本EBR對應的邏輯分區的信息,另一 個表項用於記錄下一個EBR的信息;也就是說,多個EBR是連結成單向鍊表 結構的。
主分區表表項和擴展分區表表項的結構完全相同。每一個表項記錄著對應 分區的各種屬性,包括分區大小、分區起始偏移地址和分區類型等信息。主分 區表表項中的分區起始偏移地址用於表示該表項對應分區(主分區或擴展分區) 相對於整個硬碟起始位置的偏移地址;在擴展分區表中,記錄對應邏輯分區信 息的表項中的分區起始偏移地址用於表示該表項對應的邏輯分區相對於本擴展 分區表所在的EBR起始位置的偏移地址,而記錄下一個EBR信息的表項中的 分區起始偏移地址則表示下一個EBR相對於擴展分區起始位置的偏移地址。分 區表表項中的分區類型有多種,其中一些類型表示該分區是一個擴展分區,更 多的分區類型用於標識該分區上的文件系統類型,以便作業系統能夠識別和訪 問分區中的數據。有些類型表示分區是隱藏的,在此不做贅述。
基本輸入輸出系統和基於MBR或MBR及EBR的分區管理規範有很多局 限,近年來業界發展了可擴展固件接口 EFI ( Extensible Firmware Interface )來 替代基本輸入輸出系統,同時,作為可擴展固件接口標準一部分的基於GPT的 分區管理規範也有替代基於MBR或MBR及EBR的分區管理規範的趨勢。
參見圖2 ,簡單介紹基於GPT的分區管理規範。基於GPT分區管理的硬碟 採用邏輯塊尋址方式。硬碟的第一個扇區稱為保護性主引導記錄,其結構類似
於基於MBR或MBR及EBR分區管理的硬碟的第一個扇區,用於兼容原來的 MBR。 GPT包括一個分區表頭和多個分區表表項(比如128個表項)。分區表 頭用於記錄該硬碟的相關信息包括硬碟的GUID、硬碟大小、分區表表項的 起始位置和CRC校驗和等。GPT的每個分區表表項記錄一個分區的信息。另 外,每個硬碟的GPT有兩份主GPT和輔GPT。通常情況下,主GPT在硬碟 的開始部分,輔GPT則位於硬碟末尾作為主GPT的備份,以提高硬碟分區信 息的安全性。
GPT分區表表項的結構也與MBR分區表表項不同,GPT分區表表項包括 分區類型GUID、分區GUID、分區起始的邏輯塊尋址號、分區結束的邏輯塊尋 址號、屬性標誌以及分區名等。
需要說明的是,近年來,作為存儲設備的固態硬碟(Solid State Disk)得到 了越來越廣泛的使用。為了保持兼容性,固態硬碟通常也是採用如同傳統硬碟 一樣的分區管理規範。本發明不關心存儲設備是什麼具體種類,只要採用分區 管理的存儲設備都在本發明的適用範圍以內。
通常的計算機系統中,計算機硬體和作業系統是緊密關聯的。作業系統在 啟動以後,即擁有對所有計算機硬體資源的控制權;對於存儲設備,作業系統 就可以訪問其中的所有分區和數據。計算機虛擬化技術的出現打破了計算機硬 件和作業系統之間的強耦合關係。在計算機虛擬化技術中,被稱為虛擬機監視 器(Virtual Machine Monitor )的軟體可以虛擬出多個獨立的虛擬機(Virtual Machine ),每個虛擬機都有自己的虛擬中央處理器、虛擬內存和虛擬存儲設備,
並可以安裝和運行作業系統,這種安裝運行在虛擬機監視器上的作業系統稱為
客作業系統(Guest Operating System )。現在,虛擬機監視器技術已經發展了 多種實現模型。下面,按照不同的體系結構,將其分為兩類作簡要說明。
參見圖3 ,介紹第一種基於主作業系統(Host Operating System )的模型, 在計算機硬體上配設一個作業系統,它被稱為主作業系統。虛擬機監視器運行 在該主作業系統上,並支撐著一個或多個虛擬機(圖示結構只有一個虛擬機), 虛擬機上運行的作業系統被稱為客作業系統。主作業系統可以是通用的操作系 統,例如現在廣泛使用的Windows作業系統;在有些實現模型中,主作業系統 是一個專用的作業系統,其主要功能就是運行虛擬機監視器,人們把這種操作 系統和虛擬機監視器合稱為超級監視器(Hypervisor )。
參見圖4 ,介紹第二種虛擬機監視器直接運行在計算機硬體上的模型,在 虛擬機監視器上運行的特權的作業系統可以直接訪問存儲設備和其他計算機硬 件資源,這個作業系統被稱為特權作業系統,虛擬機監視器之上運行的其他操 作系統不能直接訪問存儲設備,這些作業系統是客作業系統。
雖然上述兩種模型在結構和實現方式上都有明顯的不同,但是,在本發明 技術範疇內,不關心這些差異,而是將這兩種模型的虛擬化計算機系統中的軟 件都抽象為兩種部件主域和客域。在第一種基於主作業系統的模型裡,主操 作系統對計算機硬體執行控制,並管理存儲設備,提供虛擬機以支撐運行客操 作系統;本發明將該主作業系統稱為主域,將客作業系統稱為客域。同樣地, 在第二種模型中,特權作業系統和虛擬機監視器組合在一起作為主域,客操作
系統為客域。在圖3和圖4中,分別用粗虛線的方框劃定了上述兩種虛擬化計 算機系統模型中主域的結構部件組成範圍。
在虛擬化的計算機系統中,主域通常用其自身管理的數據容器或數據容器 片段構成虛擬機的虛擬存儲設備。所述數據容器是由主域管理的、用於存儲數 據的實體,包括硬碟或固態硬碟等存儲設備、存儲設備分區、巻(Volume )、 設備文件或一般文件等。需要說明的是,數據容器(或數據容器片段)還能夠 組合成複合數據容器。參見圖5所示,主域下的四個獨立的數據容器 一般文 件A、硬碟分區B、設備文件C、一般文件D,在圖5中,A、 B、 C的中間片 段和D共同組成了一個用作虛擬存儲設備的複合數據容器。誠然,複合數據容 器本身也是一種數據容器,可以繼續參與組合,進而形成更為複雜的複合數據 容器。本發明把獨立的數據容器和複合數據容器都統稱為數據容器。
現代作業系統中,存儲映射技術已經是一種比較成熟、並獲得廣泛應用的 實現複合數據容器的先進技術。例如,一般的GNU/Linux系統中的設備映射器 (Device Mapper )技術就是一種廣泛使用的實現複合數據容器的映射技術。在 GNU/Linux系統的設備映射器技術中,除了能把數據容器或數據容器片段靈活 地映射組成新的複合數據容器之外,還可以在整個數據容器或數據容器片段上 使用寫時拷貝(Copy-On-Write )或寫時重定向(Redirect-On-Write )等技術, 用於實現數據容器或數據容器片段的快照(Snapshot),進而實現數據容器或 數據容器片段的備份、恢復和克隆等功能。因為設備映射器技術及其功能已經 為眾所周知,在此不再贅述;需要說明的是,主域既可以把單個數據容器或數
據容器片段構建為虛擬機的虛擬存儲設備,也可以根據需要把多個數據容器或
數據容器片段組合構建為虛擬機的虛擬存儲設備(參見圖5 ),並且,主域使 用快照作為數據容器或數據容器片段來構建虛擬存儲設備也是可以的。
根據上述,可以看出雖然主域自身已可靈活構建虛擬機的虛擬存儲設備, 但是,要真正實現主域靈活構建虛擬存儲設備,還必須解決下面幾個問題。
首先,在安裝虛擬化的計算機系統時,通常先安裝主域,然後安裝客域。 具體地說,先在計算機硬體上安裝主織即將主域的靜態鏡像保存於存儲設備), 然後啟動主域並在虛擬機監視器支撐的虛擬機上安裝客域(即將客域的靜態鏡 像保存於虛擬存儲設備)。例如在圖5中,假設客域已經安裝在虛擬存儲設備 上,並在虛擬存儲設備上建立了三個主分區(如圖5所示),其中主分區1實 際存儲在數據容器A和B上,主分區2實際存放在數據容器B和C上,而主 分區3實際存放在數據容器D上。此時,如果主域簡單地把數據容器E直接放 到數據容器C和數據容器D之間形成新的虛擬存儲設備時,就會產生問題,這 是因為原來的虛擬存儲設備上記錄的分區信息與原來的虛擬存儲設備上的分區 結構是一致的,但是,它與增加數據容器E後重新生成的虛擬存儲設備的分區 結構就不一致了。原來的虛擬存儲設備上安裝的客域就不能在該虛擬存儲設備 被改變後的虛擬機上正常工作。
還有,現在的很多計算機系統通常都沒有虛擬化,這種計算機系統上安裝 的作業系統稱為物理作業系統,物理作業系統啟動後可訪問整個存儲設備。隨 著虛擬化的流行, 一個重要的課題是如何在沒有虛擬化的計算機上安裝主域,
然後把存儲設備上的物理作業系統直接變成客域。或者更準確地說,就是在主 域啟動後,主域把含有物理作業系統的靜態鏡像的數據容器(通常是存儲設備 分區或巻)直接或經數據容器的組合後作為虛擬機的虛擬存儲設備,並且在虛
擬機裡引導該鏡像作為客域來運行。參見圖9所示的範例,硬碟上安裝了四個 主分區1、 2、 3和4 ,物理作業系統被安裝在主分區1上,並使用主分區1、 2 和3。然後再將主域安裝在硬碟的主分區4上,假如希望原來的物理作業系統 的鏡像在虛擬機上作為客域運行時,仍然可以使用主分區l、 2和3而主分區4 是不可見的,那麼主域只把原來的硬碟從開始的位置到主分區3結束位置的這 段數據容器片段作為虛擬存儲設備是不夠的,這是因為硬碟上MBR分區表中 的四個分區表表項中記錄著四個主分區信息,這與主域構建的虛擬存儲設備上 三個主分區的實際情況也是不一致的。
基於上述說明,可獲悉如果主域的數據容器中已經含有了客域的數據(如 在圖5示例中,主分區1、 2和3中的數據;在圖9示例中,主分區1、 2和3 中的數據),那麼主域在生成或改變虛擬存儲設備時,就不能簡單地只構成虛 擬存儲設備,而必須使得虛擬存儲設備中的分區信息與希望構建的虛擬存儲設 備的分區結構相互一致,並且符合分區管理規範。例如在圖5示例中,在把數 據容器E放到兩個數據容器C和D之間構成新的虛擬存儲設備的時候,就需要 在MBR的主分區表中,將記錄主分區3的分區表表項中的分區起始偏移地址 進行修改,使其能夠反映當前主分區3在新的虛擬存儲設備中的位置。同樣地,
在圖9示例中,虛擬存儲設備的分區表中的第四項應該設置為空,使得其分區 信息與虛擬存儲設備中的三個主分區的分區結構保持一致。
總之,如何更好地解決主域能夠方便、靈活地構建虛擬機的虛擬存儲設備, 組成能夠實際應用的虛擬化的計算機系統就成為業內科技人員關注的新焦點。

發明內容
有鑑於此,本發明的目的是提供一種構建基於分區管理的虛擬存儲設備的 計算機系統及方法。在本發明系統中,主域對存儲設備和數據容器進行管理, 根據需要靈活地設置數據容器或數據容器片段作為虛擬機的虛擬存儲設備,並 設置虛擬機的虛擬存儲設備上的分區信息,使其與虛擬存儲設備的分區結構一 致,從而較好地解決了現有技術的缺陷。
為了達到上述目的,本發明提供了一種構建基於分區管理的虛擬存儲設備 的計算機系統,該系統包括計算機硬體裝置和在該計算機硬體裝置上運行的 軟體單元,所述計算機硬體裝置至少設有一個基於分區管理的存儲設備,所述
軟體單元包括主域和客域,其中主域含有虛擬機監視器,該虛擬機監視器支撐 的虛擬機包含有虛擬存儲設備;主域直接運行於計算機硬體裝置上,並對存儲 設備進行管理,客域運行於主域的虛擬機監視器所支撐的虛擬機上,並對虛擬 存儲設備進行訪問;其特徵在於該系統的主域中設有虛擬存儲設備構建模塊, 該虛擬存儲設備構建模塊利用主域管理的數據容器和/或數據容器片段構成虛 擬存儲設備,並負責對虛擬存儲設備或構成虛擬存儲設備的數據容器和/或數據
容器片段設置基於分區管理規範的分區信息,使得該虛擬存儲設備具有特定的 分區管理結構。。
所述計算機硬體裝置中的存儲設備是硬碟或固態硬碟。
所述虛擬存儲設備構建模塊對其構建的所述虛擬存儲設備設置符合分區管
理規範的分區信息時,有兩種方案
所述虛擬存儲設備構建模塊在構成虛擬存儲設備後,直接在該虛擬存儲設 備上設置分區信息;或者直接在構成虛擬存儲設備的數據容器和/或數據容器片 段的相應位置上設置分區信息,使得該虛擬存儲設備的相應位置上具有相應的 分區信息。
所述虛擬存儲設備構建模塊對虛擬存儲設備設置的分區信息與所述計算機 硬體裝置的存儲設備的分區信息採用相同的分區管理規範,即當所述存儲設備 的分區信息是基於MBR或MBR及EBR的分區管理規範時,虛擬存儲設備構 建模塊對虛擬存儲設備設置的分區信息也是符合基於MBR或MBR及EBR的 分區管理規範的;當所述存儲設備的分區信息是基於GPT的分區管理規範時, 虛擬存儲設備構建模塊對虛擬存儲設備設置的分區信息也是符合基於GPT的 分區管理規範的。
所述主域利用存儲映射技術把數據容器和/或數據容器片段構成虛擬存儲 設備,並且在構成虛擬存儲設備的數據容器和/或數據容器片段上能夠使用快 照。
為了達到上述目的,本發明還提供了一種採用上述計算機系統構建基於分
區管理的虛擬存儲設備的方法,其特徵在於在構建基於分區管理的虛擬存儲 設備的計算機系統上,虛擬存儲設備構建模塊先讀取計算機硬體裝置中存儲設 備的分區信息,生成相應的虛擬存儲設備輔助文件,並將該虛擬存儲設備輔助 文件與含有存儲設備分區數據的數據容器和/或數據容器片段組合構成虛擬存 儲設備;虛擬存儲設備構建模塊再對該虛擬存儲設備設置符合分區管理規範的 分區信息,且要使該分區信息與所構建的虛擬存儲設備上的分區結構相互一致, 並符合管理規範。
所述方法包括下列操作步驟
(1 )虛擬存儲設備構建模塊讀取計算機硬體裝置中存儲設備的分區信息, 該分區信息包括分區在所述存儲設備上的位置信息;
(2 )虛擬存儲設備構建模塊生成虛擬存儲設備輔助文件;
(3 )虛擬存儲設備構建模塊把虛擬存儲設備輔助文件和含有存儲設備分區 數據的數據容器和/或數據容器片段組合構成虛擬存儲設備。
所述步驟(2 )中,虛擬存儲設備構建模塊在虛擬存儲設備輔助文件中直接 設置分區信息,以使在步驟(3 )中生成的虛擬存儲設備上的分區信息與虛擬存 儲設備上的分區結構保持一致。
所述步驟(3 )中,所述虛擬存儲設備構建模塊是在生成虛擬存儲設備後, 再在虛擬存儲設備上設置分區信息,使得分區信息與虛擬存儲設備上的分區結 構保持一致。
所述方法中設置的分區信息是符合基於MBR或MBR及EBR的分區管理 規範的,或者是符合GPT的分區管理規範的。
總之,本發明提供了一種能夠適用於多種虛擬化計算機系統的方便、靈活 地構建虛擬存儲設備的計算機系統和方法,在本發明系統中,主域對存儲設備 和數據容器進行管理時,能夠根據需要靈活設置數據容器或數據容器片段作為 虛擬機的虛擬存儲設備,並對虛擬機的虛擬存儲設備設置分區信息,使該分區 信息與虛擬存儲設備的分區結構一致,從而較好地解決了現有技術的缺陷。因 此,本發明能夠大大提高客域的可管理性,具有很好的推廣應用前景。


圖1是採用基於MBR或MBR及EBR的分區管理規範的存儲設備分區結 構示意圖。
圖2是採用基於GPT的分區管理規範的存儲設備分區結構示意圖。 圖3是基於主作業系統實現的虛擬化計算機系統結構示意圖。 圖4是基於虛擬機監視器實現的虛擬化計算機系統結構示意圖。 圖5是由主域組成複合數據容器並構建虛擬存儲設備的實施例示意圖。 圖6是本發明構建基於分區管理的虛擬存儲設備的計算機系統的組成結構 示意圖。
圖7是本發明構建基於分區管理的虛擬存儲設備的計算機系統中客域對計 算機硬體的存儲設備進行訪問的過程示意圖。
圖8是本發明計算機系統構建基於分區管理的虛擬存儲設備的方法的操作 步驟流程圖。
圖9是基於MBR的分區管理方式下,通過虛擬存儲設備輔助文件和存儲 設備片段構建虛擬存儲設備的實施例示意圖。
圖10是基於GPT的分區管理方式下,通過虛擬存儲設備輔助文件和存儲 設備片段構建虛擬存儲設備實現的實施例示意圖。
具體實施例方式
為使本發明的目的、技術方案和優點更加清楚,下面結合附圖對本發明作 進一步的詳細描述。
參見圖6 ,介紹本發明構建基於分區管理的虛擬存儲設備的計算機系統, 該系統包括兩個部分計算機硬體裝置和在該計算機硬體裝置上運行的軟體單 元,其中計算機硬體裝置300至少設有中央處理器301、內存302和一個基於 分區管理的存儲設備303 (如硬碟或固態硬碟)。軟體單元包括主域200和客 域100兩部分。主域200直接運行在計算機硬體300裝置上,主域200含有虛 擬機監視器204 ,該虛擬機監視器204支撐運行著虛擬機400。虛擬機400至少 含有虛擬中央處理器401、虛擬內存402和基於分區管理的虛擬存儲設備403 , 主域200對存儲設備303進行管理。客域100運行在主域的虛擬機監視器204 支撐的虛擬機400上,並對虛擬存儲設備403進行訪問。
本發明系統的創新之處是該系統的主域200中除了設有存儲映射訪問模 塊202和數據容器訪問模塊203以外,還設有虛擬存儲設備構建模塊201。其 中存儲映射訪問模塊202負責根據數據容器到虛擬存儲設備的映射構成規則, 將客域對虛擬存儲設備的訪問請求中的訪問地址轉換為相對應的數據容器的相 應位置後,將該請求和地址信息一起轉給數據容器訪問模塊,以便由數據容器 訪問模塊203對該相應位置的數據進行訪問。虛擬存儲設備構建模塊201用於 根據需要通過存儲映射技術把主域200上的數據容器和/或數據容器片段組建構 成為虛擬機400的虛擬存儲設備403 ,並負責對虛擬存儲設備403或構成虛擬 存儲設備403的數據容器和/或數據容器片段設置基於分區管理規範的分區信 息,使得該虛擬存儲設備403具有特定的分區結構。
虛擬存儲設備構建模塊201在用數據容器和/或數據容器片段來生成虛擬存 儲設備403時,還要把數據容器和/或數據容器片段到虛擬存儲設備的構成規則 通知給存儲映射訪問模塊202。這樣,存儲映射訪問模塊202就能夠根據虛擬 存儲設備構建模塊201定義的數據容器和/或數據容器片段到虛擬存儲設備的映 射構成規則實現虛擬存儲設備403到數據容器和/或數據容器片段的存儲映射, 從而將客域100對虛擬存儲設備403的訪問請求中的訪問地址轉換為相對應的 數據容器和/或數據容器片段的相應位置後,將該請求和地址信息一起轉給數據 容器訪問模塊203 ,以便由數據容器訪問模塊203對該相應位置的數據進行訪 問。例如(參見圖7所示),客域100對虛擬存儲設備403上某個存儲單元404 的訪問請求,就會由存儲映射訪問模塊202將其轉換為對主域200管理的數據
容器的訪問,並進而通過數據容器訪問模塊203訪問到存儲設備303上的存儲 單元304 ,再依次經數據容器訪問模塊203、存儲映射訪問模塊202返回訪問結
本發明系統中的客域100是通用的作業系統。它運行在主域200的虛擬機 監視器204所支撐的虛擬機400上。每個客域100內設有應用101和子系統102 , 應用101是包括編輯應用、圖像處理應用,遊戲等的普通應用程式,子系統102 是作業系統的內核子系統。應用101和子系統102都可以對虛擬存儲設備403 發起訪問請求,以訪問虛擬存儲設備403上存儲的數據。
需要說明的是,本發明中的計算機硬體裝置是包括大型計算機、小型計算 機、伺服器、工作站和個人計算機的各種計算機。本發明涉及的基於分區管理 的計算機硬體裝置中的存儲設備是硬碟或固態硬碟。另外,上述圖6和圖7中, 都是基於主作業系統的虛擬化模型來描述本發明構建基於分區管理的虛擬存儲 設備的計算機系統,這只是便利於說明,其他計算機的虛擬化模型都在本發明 的適用範圍內。
虛擬存儲設備構建模塊201在對其構建的虛擬存儲設備403設置基於分區 管理規範的分區信息時,有兩種方案 一種是虛擬存儲設備構建模塊201在構 成虛擬存儲設備403後,直接在該虛擬存儲設備403上設置分區信息;另一種 是直接在數據容器或數據容器片段上的相應位置設置分區信息,使得該數據容 器或數據容器片段構成的虛擬存儲設備403的相應位置上有設置的分區信息。
通常來說,當計算機硬體裝置的存儲設備303是基於MBR或MBR及EBR 的分區管理規範進行分區管理時,則虛擬存儲設備構建模塊201對虛擬存儲設 備403設置的分區信息也是符合基於MBR或MBR及EBR的分區管理規範的。
而當計算機硬體裝置的存儲設備303採用基於GPT規範進行分區管理時, 虛擬存儲設備構建模塊201對虛擬存儲設備403設置的分區信息也是符合基於 GPT的分區管理規範的。
客域100對虛擬存儲設備403的分區管理通常與虛擬存儲設備構建模塊 201設置的分區信息採用相同的分區管理規範。如果虛擬存儲設備構建模塊201 設置的分區信息是基於MBR或MBR及EBR的分區管理規範,那麼客域通常 也採用基於MBR或MBR及EBR的分區管理;如果虛擬存儲設備構建模塊設 置的分區信息是基於GPT的分區管理規範的,那麼客域也採用基於GPT的分 區管理。
下面介紹本發明適用的一個典型情形。計算機硬體裝置的存儲設備通常設 有多個分區,人們希望把這些分區中的一部分讓客域訪問,並且客域只能訪問 這些分區。 一個非常方便的構建虛擬存儲設備的方案是這樣的構建虛擬存儲 設備的數據容器包括虛擬存儲設備輔助文件和存儲設備片段。這裡的虛擬存儲 設備輔助文件是一般文件並被映射到虛擬存儲設備上非分區的位置比如在基 於MBR或MBR及EBR的分區管理的情況下,虛擬存儲設備輔助文件可以映 射到虛擬存儲設備上MBR、 EBR的位置上或虛擬存儲設備上空閒未被使用的 位置上;比如在基於GPT的分區管理的情況下,虛擬存儲設備輔助文件可以映
射到虛擬存儲設備上保護性主引導記錄、主GPT、輔GPT或虛擬存儲設備上空 閒未被使用的位置上。存儲設備片段含有一個或多個分區。虛擬存儲設備構建 模塊是把虛擬存儲設備輔助文件和存儲設備片段(當然還可包括其他數據容器 和/或數據容器片段、或者是使用存儲設備片段的快照)組合在一起構成虛擬存 儲設備,並按照分區管理規範設置虛擬存儲設備上的分區信息,使得每個存儲 設備片段上的分區都在虛擬存儲設備上有其對應的分區。
針對這種使用虛擬存儲設備輔助文件和存儲設備片段構建虛擬存儲設備的 情形,本發明還提供了一種採用上述計算機系統構建基於分區管理的虛擬存儲 設備的方法在構建基於分區管理的虛擬存儲設備的計算機系統上,虛擬存儲 設備構建模塊先讀取其硬體裝置存儲設備的分區信息,生成相應的虛擬存儲設 備輔助文件,並將該虛擬存儲設備輔助文件與含有存儲設備分區架構的數據容 器和/或數據容器片段組合構成虛擬存儲設備;虛擬存儲設備構建模塊還要對該 虛擬存儲設備設置符合分區管理規範的分區信息,且要使該分區信息與所構建 的虛擬存儲設備上的分區組成結構相互一致,並符合管理規範。
所述方法包括下列操作步驟
步驟1、虛擬存儲設備構建模塊讀取計算機硬體裝置中的存儲設備的分區 信息,該分區信息包括分區在所述存儲設備上的位置信息。
步驟2、虛擬存儲設備構建模塊生成虛擬存儲設備輔助文件; 在步驟(2 )中,虛擬存儲設備構建模塊在虛擬存儲設備輔助文件中直接設 置分區信息,以使在步驟(3 )中生成的虛擬存儲設備上的分區信息與虛擬存儲 設備上的分區結構保持一致。
步驟3、虛擬存儲設備構建模塊把虛擬存儲設備輔助文件和含有存儲設備 分區的數據容器組合成虛擬存儲設備。
在步驟(3 )中,所述虛擬存儲設備構建模塊是在生成虛擬存儲設備後,再 在虛擬存儲設備上設置分區信息,使得分區信息與虛擬存儲設備上的分區結構 保持一致。
本發明方法中設置的分區信息有兩種 一種是基於MBR或MBR及EBR 的分區管理規範的,另一種是基於GPT的分區管理規範的。
本發明已經進行了實施試驗,下面簡要說明該實施例的試驗情況。 參見圖9 ,圖中左側是未虛擬化的計算機系統的存儲設備A。該存儲設備A 採用基於MBR的分區管理的分區結構。在存儲設備A上配置了四個分區主 分區l、 2、 3和4 ,並且物理作業系統使用了其中的主分區1、 2和3。實施例 是把存儲設備上的主分區1、 2和3完整地作為虛擬存儲設備的主分區1、 2和 3 ,並且對主分區1、 2和3的大小、分區起始地址、分區類型和分區中的數據 都保持不變。在該實施例的試驗中,在存儲設備的主分區4上安裝了主域。然 後由虛擬存儲設備構建模塊讀取存儲設備所示的存儲設備的分區信息,生成了 一個虛擬存儲設備輔助文件,該虛擬存儲設備輔助文件與存儲設備A上從開始 到主分區1之前的數據相對應,再設置虛擬存儲設備輔助文件中的分區信息內
容,使得其分區信息與虛擬存儲設備B上含有的主分區1、 2和3的分區結構 相互一致;然後把虛擬存儲設備輔助文件、主分區1、 2和3 —起組合為一個復 合數據容器,將其作為圖中右側的虛擬存儲設備B。實施例的實驗結果是客 域啟動成功,且能夠正常訪問虛擬存儲設備B中的三個主分區中的數據。
此外,申請人還在主分區1上建立了快照試驗。即把虛擬存儲設備輔助文 件、主分區1的快照、主分區2和主分區3 —起組合成一個符合數據容器作為 客域的虛擬存儲設備。其實驗結果是客域也是正常啟動、並成功訪問三個主 分區上的數據。
參見圖10 ,本發明還在基於GPT分區管理的存儲設備上進行類似的試 驗。與圖9的試驗相類似,試驗中虛擬存儲設備構建模塊讀取GPT信息, 並生成了兩個虛擬存儲設備輔助文件。第一個虛擬存儲設備輔助文件中對應 著虛擬存儲設備中從開始到分區1之前的數據(包括保護性主分區記錄和主 GPT ),另一個虛擬存儲設備輔助文件對應著虛擬存儲設備的末尾(包括輔 GPT ),設置主GPT和輔GPT中的分區表信息使得與虛擬存儲設備上兩個 分區的結構一致。該實施例的試驗也是成功的。
權利要求
1、一種構建基於分區管理的虛擬存儲設備的計算機系統,該系統包括計算機硬體裝和在該計算機硬體裝上運行的軟體單元,所述計算機硬體裝至少設有一個基於分區管理的存儲設備,所述軟體單元包括主域和客域,其中主域有虛擬機監視器,並且該虛擬機監視器支撐的虛擬機包含有虛擬存儲設備;主域接運行於計算機硬體裝上,並對存儲設備進行管理,客域運行於主域的虛擬機監視器所支撐的虛擬機上,並對虛擬存儲設備進行訪問;其特徵在於該系統的主域中設有虛擬存儲設備構建模塊,該虛擬存儲設備構建模塊利用主域管理的數據容器和/或數據容器片段構成虛擬存儲設備,並負責對虛擬存儲設備或構成虛擬存儲設備的數據容器和/或數據容器片段設符合分區管理規範的分區信息,使得該虛擬存儲設備具有特定的分區結構。
2、 根據權利要求1所述的計算機系統,其特徵在於所述計算機硬體裝置 中的存儲設備是硬碟或固態硬碟。
3、 根據權利要求1所述的計算機系統,其特徵在於所述虛擬存儲設備構 建模塊對其構建的所述虛擬存儲設備設置符合分區管理規範的分區信息時,有 兩種方案所述虛擬存儲設備構建模塊在構成虛擬存儲設備後,直接在該虛擬存儲設 備上設置分區信息;或者直接在構成虛擬存儲設備的數據容器和/或數據容器片段的相應位置上設置分區信息,使得該虛擬存儲設備的相應位置上具有相應的 分區信息。
4、 根據權利要求1所述的計算機系統,其特徵在於所述虛擬存儲設備構 建模塊對虛擬存儲設備設置的分區信息與所述計算機硬體裝置的存儲設備的分 區信息採用相同的分區管理規範,即當所述存儲設備的分區信息是基於MBR 或MBR及EBR的分區管理規範時,虛擬存儲設備構建模塊對虛擬存儲設備設 置的分區信息也是符合基於MBR或MBR及EBR的分區管理規範的;當所述 存儲設備的分區信息是基於GPT的分區管理規範時,虛擬存儲設備構建模塊對 虛擬存儲設備設置的分區信息也是符合基於GPT的分區管理規範的。
5、 根據權利要求1所述的計算機系統,其特徵在於所述主域利用存儲映 射技術用數據容器和/或數據容器片段構成虛擬存儲設備,並且在構成虛擬存儲 設備的數據容器和/或數據容器片段上能夠使用快照。
6、 一種採用權利要求1所述的計算機系統構建基於分區管理的虛擬存儲設 備的方法,其特徵在於在構建基於分區管理的虛擬存儲設備的計算機系統上, 虛擬存儲設備構建模塊先讀取計算機硬體裝置中存儲設備的分區信息,生成相 應的虛擬存儲設備輔助文件,並將該虛擬存儲設備輔助文件與含有存儲設備分 區數據的數據容器和/或數據容器片段組合構成虛擬存儲設備;虛擬存儲設備構 建模塊還對該虛擬存儲設備設置符合分區管理規範的分區信息,且要使該分區 信息與所構建的虛擬存儲設備上的分區結構相互一致。
7、 根據權利要求6所述的方法,其特徵在於所述方法包括下列操作步驟 (1 )虛擬存儲設備構建模塊讀取計算機硬體裝置中存儲設備的分區信息,該分區信息包括分區在所述存儲設備上的位置信息;(2 )虛擬存儲設備構建模塊生成虛擬存儲設備輔助文件;(3 )虛擬存儲設備構建模塊把虛擬存儲設備輔助文件和含有存儲設備分區數據的數據容器和/或數據容器片段組合構成虛擬存儲設備。
8、 根據權利要求6所述的方法,其特徵在於所述步驟(2 )中,虛擬存 儲設備構建模塊在虛擬存儲設備輔助文件中直接設置分區信息,以使在步^( 3 ) 中生成的虛擬存儲設備上的分區信息與虛擬存儲設備上的分區結構保持一致。
9、 根據權利要求6所述的方法,其特徵在於所述步驟(3 )中,所述虛 擬存儲設備構建模塊是在生成虛擬存儲設備後,再在虛擬存儲設備上設置分區 信息,使得分區信息與虛擬存儲設備上的分區結構保持一致。
10、 根據權利要求6所述的方法,其特徵在於所述方法中設置的分區信 息是符合基於MBR或MBR及EBR的分區管理規範的,或者是符合基於GPT 的分區管理規範的。
全文摘要
一種構建基於分區管理的虛擬存儲設備的計算機系統,該系統包括計算機硬體裝置和在計算機硬體裝置上運行的軟體單元,軟體單元包括主域和客域,主域直接運行於計算機硬體裝置上,主域含有虛擬機監視器,虛擬機監視器支撐著含有虛擬存儲設備的虛擬機;客域運行於主域的虛擬機監視器所支撐的虛擬機上,並對虛擬存儲設備進行訪問;其創新之處是該系統的主域中設有虛擬存儲設備構建模塊,該虛擬存儲設備構建模塊負責用主域管理的數據容器和/或數據容器片段構成虛擬存儲設備,並對虛擬存儲設備設置分區信息,以符合管理規範。本發明還提供一種構建基於分區管理的虛擬存儲設備的方法。本發明能夠靈活構建虛擬存儲設備,提高了客域的可管理性。
文檔編號G06F12/08GK101387989SQ20081022524
公開日2009年3月18日 申請日期2008年10月29日 優先權日2008年10月29日
發明者莊小凡, 瑞 張, 張玉昆 申請人:北京世紀紅山科技有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀