PVS架構(gòu)中的VHD虛擬磁盤怎么理解,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
站在用戶的角度思考問題,與客戶深入溝通,找到連平網(wǎng)站設(shè)計(jì)與連平網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都做網(wǎng)站、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋連平地區(qū)。
差異虛擬硬盤將差異虛擬硬盤本身內(nèi)的母盤文件定位器存儲(chǔ)起來,當(dāng)驅(qū)動(dòng)嘗試打開差異硬盤時(shí),將同時(shí)打開差異虛擬硬盤和母盤。 母盤也可以是差異虛擬硬盤,在這種情況下,可能有一連串差異虛擬硬盤,最終終止于非差異虛擬硬盤。
母盤定位器表僅由差異虛擬硬盤來使用,如本文前面的“可擴(kuò)展虛擬硬盤頭部格式”中所述。差異虛擬硬盤是一種可擴(kuò)展的VHD,它的文件結(jié)構(gòu)與可擴(kuò)展VHD相同,只是在頁腳區(qū)域中“類型”字段為4,表示這是一個(gè)差異虛擬硬盤。由于差異虛擬硬盤不能獨(dú)立運(yùn)行,須依賴其母盤,因此在頭部中的“母盤UUID”、“母盤名稱”及“母盤定位器”等字段存儲(chǔ)著有關(guān)重要信息:母盤UUID、母盤名稱用于差異虛擬硬盤識(shí)別母盤;母盤定位器存儲(chǔ)著差異虛擬硬盤在不同平臺(tái)(Windows或Mac等)上的母盤的定位編碼信息,用于在不同平臺(tái)上的遷移操作。
在Windows中,有兩種類型的平臺(tái)定位器:W2ku和W2ru。 前者是母盤的絕對(duì)路徑名,后者是母盤相對(duì)于差異虛擬硬盤的路徑名。
例如,位于Windows的計(jì)算機(jī)上的根驅(qū)動(dòng)器中的母盤映像將存儲(chǔ)格式如下:
Type | Example |
W2ku | c:\directory\parent.vhd |
W2ru | .\directory\parent.vhd |
相對(duì)路徑名的優(yōu)點(diǎn)是它允許差異虛擬硬盤和母盤移植到不同的位置。使用絕對(duì)路徑名,每當(dāng)移動(dòng)母盤時(shí),必須顯式重新鏈接母盤和子硬盤。
當(dāng)創(chuàng)建差異虛擬硬盤時(shí),如果可能,應(yīng)該初始化相應(yīng)平臺(tái)上的兩種類型的平臺(tái)定位器的路徑名。
差異虛擬硬盤的寫操作:
對(duì)于寫操作,所有數(shù)據(jù)都將寫入差異虛擬硬盤映像。對(duì)于寫入特定塊的所有扇區(qū),塊位圖被標(biāo)記為dirty。
差異虛擬硬盤的讀操作:
當(dāng)驅(qū)動(dòng)讀取硬盤映像的扇區(qū)時(shí),虛擬硬盤子系統(tǒng)檢查差異虛擬硬盤中的塊位圖。然后硬盤子系統(tǒng)從差異虛擬硬盤中讀取標(biāo)記為dirty的扇區(qū),并從母盤讀取標(biāo)記為clean的扇區(qū)。
例如,考慮在母盤映像和子硬盤映像中都保存扇區(qū)4096至8191的塊。塊的第一個(gè)扇區(qū)保存該塊的位圖。單個(gè)單元格表示位圖中的一個(gè)位,黑點(diǎn)×××表示塊中的特定扇區(qū)已被數(shù)據(jù)寫入。
母盤數(shù)據(jù)塊:
4096 |
4097 |
4098 |
4099 |
4100 |
4101 | ● 4102 | ● 4103 | ● 4104 |
4105 |
4106 |
4107 | ||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty | |||||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty | |||||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty |
差異虛擬硬盤子數(shù)據(jù)塊:
4096 |
4097 |
4098 |
4099 |
4100 |
4101 | ● 4102 | ● 4103 | ● 4104 |
4105 |
4106 |
4107 | ||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty | |||||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty | |||||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty |
如果上層驅(qū)動(dòng)發(fā)出從4098到4104的扇區(qū)的讀取操作,則硬盤子系統(tǒng)將從母盤塊讀取扇區(qū)4098到4101,并且將從差異虛擬硬盤子塊中讀取4102到4104。
如果驅(qū)動(dòng)針對(duì)扇區(qū)從4102到4106發(fā)出寫操作,則整個(gè)數(shù)據(jù)將被寫入差異虛擬硬盤子塊,并且位圖將被標(biāo)記為dirty,用于差異虛擬硬盤子塊中的扇區(qū)4105和4106。
差異虛擬硬盤子數(shù)據(jù)塊:
4096 |
4097 |
4098 |
4099 |
4100 |
4101 | ● 4102 | ● 4103 | ● 4104 |
4105 |
4106 |
4107 | ||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty | |||||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty | |||||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty |
針對(duì)扇區(qū)從4102到4106發(fā)出寫操作:
4096 |
4097 |
4098 |
4099 |
4100 |
4101 | ● 4102 | ● 4103 | ● 4104 | ● 4105 | ● 4106 |
4107 | ||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty | dirty | dirty | |||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty | dirty | dirty | |||||||||
Clean | Clean | Clean | Clean | Clean | Clean | dirty | dirty | dirty | dirty | dirty |
綜上,使用差異虛擬硬盤模式時(shí),會(huì)同時(shí)打開差異虛擬硬盤和它的母盤。當(dāng)對(duì)一個(gè)差異虛擬硬盤進(jìn)行寫操作時(shí),會(huì)把所寫入的數(shù)據(jù)存儲(chǔ)在差異虛擬硬盤上,不對(duì)母盤改動(dòng);當(dāng)對(duì)其進(jìn)行讀操作時(shí),如果所讀數(shù)據(jù)已經(jīng)修改,則讀取存儲(chǔ)在差異虛擬硬盤上的改動(dòng)數(shù)據(jù),數(shù)據(jù)沒有改動(dòng)則讀取母盤的原始數(shù)據(jù)。如果讀取的數(shù)據(jù)包含了母盤的原始數(shù)據(jù)和差異虛擬硬盤上的改動(dòng)數(shù)據(jù),則先讀取母盤的原始數(shù)據(jù),然后在讀取差異虛擬硬盤上的改動(dòng)數(shù)據(jù)并將其組合為統(tǒng)一的數(shù)據(jù)。
對(duì)于固定方式的VHD 文件,虛擬硬盤的扇區(qū)與文件的扇區(qū)順序?qū)?yīng),對(duì)固定方式VHD 進(jìn)行尋址,通過頁腳區(qū)域查找對(duì)應(yīng)扇區(qū)即可。
對(duì)于可擴(kuò)展的VHD,其數(shù)據(jù)塊由塊分配表動(dòng)態(tài)分配,其虛擬硬盤和VHD 文件的地址要經(jīng)過層次的索引,進(jìn)而達(dá)到存儲(chǔ)或讀寫數(shù)據(jù)的目的。
詳細(xì)說明如下:
(1)讀可擴(kuò)展VHD文件的頁腳區(qū)域,通過頁腳區(qū)域的“類型”“數(shù)據(jù)偏移量”等字段,確定是否是可擴(kuò)展VHD 文件以及頭部的位置在哪兒。
(2)讀取頭部,確定塊大小,塊分配表的位置和數(shù)量。
(3)找到塊分配表,定位對(duì)應(yīng)塊分配條目,讀取條目的值。
(4)根據(jù)分配表?xiàng)l目的值,確定其值(數(shù)據(jù)塊的扇區(qū)位圖地址)對(duì)應(yīng)的數(shù)據(jù)塊,讀取扇區(qū)位圖,確定數(shù)據(jù)區(qū)域的扇區(qū)使用情況,然后讀取數(shù)據(jù);若分配表?xiàng)l目的值為0xFFFFFFFF,說明該數(shù)據(jù)塊未寫入任何數(shù)據(jù)。
(1)讀差異VHD文件的頁腳區(qū)域,通過頁腳區(qū)域的“類型”“數(shù)據(jù)偏移量”等字段,確定是否是差異VHD 文件以及頭部的位置在哪兒。
(2)讀取頭部,通過頭部中的“母盤UUID”、“母盤名稱”及“母盤定位器”等字段確定母盤位置,然后確定差異虛擬硬盤本身的塊大小,塊分配表的位置和數(shù)量。
(3)找到母盤,重復(fù)可擴(kuò)展模式下的尋址過程,找到所需要讀取的數(shù)據(jù);同時(shí),其差異虛擬硬盤本身找尋自己的塊分配表,定位對(duì)應(yīng)塊分配條目,讀取條目的值。
(4)根據(jù)分配表?xiàng)l目的值,確定其值(數(shù)據(jù)塊的扇區(qū)位圖地址)對(duì)應(yīng)的數(shù)據(jù)塊,讀取扇區(qū)位圖,確定數(shù)據(jù)區(qū)域的扇區(qū)使用情況,然后讀取數(shù)據(jù);若分配表?xiàng)l目的值為0xFFFFFFFF,說明該數(shù)據(jù)塊未寫入任何數(shù)據(jù)。
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。
當(dāng)前標(biāo)題:PVS架構(gòu)中的VHD虛擬磁盤怎么理解
當(dāng)前URL:http://aaarwkj.com/article48/pccphp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、軟件開發(fā)、企業(yè)網(wǎng)站制作、Google、響應(yīng)式網(wǎng)站、定制開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
營(yíng)銷型網(wǎng)站建設(shè)知識(shí)