freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

虛擬機(jī)淺析word版(已改無(wú)錯(cuò)字)

2023-06-19 17:36:44 本頁(yè)面
  

【正文】 后由 mmu 來(lái)執(zhí)行內(nèi)存地址映射 )。所以 VMM 需要給客戶操作 系統(tǒng)提供頁(yè)表和 mmu 的虛擬;操作系統(tǒng)是通過(guò)設(shè)備驅(qū)動(dòng)程序直接操作硬件設(shè)備的,而在系統(tǒng)虛擬機(jī)中,硬件設(shè)備主要被 VMM 控制了 (雖然也可能被 VMM 直接提供給客戶操作系統(tǒng)使用 )。所以 VMM 需要給客戶操作系統(tǒng)提供設(shè)備的虛擬。 CPU 的虛擬化 前面說(shuō)到,系統(tǒng)虛擬機(jī)是在同一硬件平臺(tái)下的虛擬,客戶操作系統(tǒng)的指令是可以在主機(jī) CPU 上直接執(zhí)行的。但是由于特權(quán)指令的存在,在客戶操作系統(tǒng)上執(zhí)行指令時(shí),可能因?yàn)橛龅教貦?quán)指令而觸發(fā) CPU 異常。這種情況倒還比較好辦, VMM 捕捉到這些異常,然后判斷:如果客戶操作系統(tǒng)正運(yùn)行在它的用戶態(tài),這種情 況屬于客戶操作系統(tǒng)上的進(jìn)程越權(quán)訪問(wèn),則觸發(fā)客戶操作系統(tǒng)的異常處理過(guò)程;而如果客戶操作系統(tǒng)正運(yùn)行在它的內(nèi)核態(tài),則 VMM 會(huì)替它去執(zhí)行這條特權(quán)指令。 然而,可能存在一些比較討厭的指令,它們?cè)谟脩魬B(tài)和內(nèi)核態(tài)下面執(zhí)行的效果不同,它們是非特權(quán)的敏感指令。這樣一來(lái),客戶操作系統(tǒng)在它的內(nèi)核態(tài)下執(zhí)行這樣的指令時(shí),實(shí)際上卻是在 VMM 的用戶態(tài)下去執(zhí)行的,達(dá)不到預(yù)期的效果,可能造成程序錯(cuò)誤。然而這樣的指令又不屬于特權(quán)指令, VMM 根本無(wú)法通過(guò) CPU 異常來(lái)捕捉。于是 VMM 只好在執(zhí)行客戶操作系統(tǒng)的代碼之前先掃描一下將要執(zhí)行的指令,如果遇 到這樣的非特權(quán)的敏感指令, VMM 就將其替換成一條陷阱指令,并且記錄下 XX 地址原本是 YY指令 (顯然這個(gè)過(guò)程還是比較耗時(shí)的 )。當(dāng)客戶操作系統(tǒng)執(zhí)行到這里時(shí),就會(huì)硬鐺鐺地觸發(fā)一次 CPU 異常,然后再由 VMM 來(lái)處理。 據(jù)說(shuō)當(dāng)前大部分的硬件平臺(tái)都具有這樣的非特權(quán)的敏感指令,在它們之上建立的系統(tǒng)虛擬機(jī)很難避免上面說(shuō)到的指令掃描與替換 (vmware 就是這樣做的 )。而一些 CPU 為了更好地支持虛擬化,也可能通過(guò)一些擴(kuò)展來(lái)規(guī)避非特權(quán)的敏感指令。比如 intel 的 VTx 技術(shù),明確地為虛擬化提供了一種名為 VMX 的操作模式。在這種模 式下,原有的非特權(quán)的敏感指令都變成了特權(quán)指令 (此外還支持很多虛擬化的特征 )(kvm 就是利用這種模式來(lái)實(shí)現(xiàn)的 )。 內(nèi)存的虛擬化 客戶操作系統(tǒng)本身有自己的虛擬內(nèi)存管理,它維護(hù)了一套頁(yè)表來(lái)實(shí)現(xiàn)地址映射。而客戶操作系統(tǒng)認(rèn)為的物理地址實(shí)際上是 VMM 提供的虛擬地址,這個(gè)地址還需要通過(guò)由 VMM 維護(hù)的頁(yè)表來(lái)進(jìn)行二次映射,才能得到真正的物理地址。硬件 mmu 只支持一次映射,而另一次映射如果要通過(guò)軟件來(lái)完成的話,內(nèi)存訪問(wèn)的效率將會(huì)大打折扣。 客戶操作系統(tǒng)的頁(yè)表 (記為 A=B)和 VMM 的頁(yè)表 (記為 B=C)對(duì)于 VMM 來(lái)說(shuō)都是可見(jiàn)的,于 是 VMM 可以將這兩個(gè)頁(yè)表綜合起來(lái),生成一個(gè) A=C 的頁(yè)表,謂之影子頁(yè)表。真正被 mmu 使用的就是這個(gè)影子頁(yè)表。這樣一來(lái),客戶操作系統(tǒng)的虛擬地址就只需要一次映射便能得到物理地址了。當(dāng)然,頁(yè)表 A=B 和頁(yè)表 B=C 也必須都保存在內(nèi)存中的,它們才是真正邏輯上的頁(yè)表。程序讀寫(xiě)頁(yè)表需要關(guān)心的就是它們,而當(dāng)它們被更新時(shí), VMM 必須立刻生成新的影子頁(yè)表。 但是,如果客戶操作系統(tǒng)修改了自己的頁(yè)表, VMM 又怎么知道呢 ?這還得靠CPU 異常。一般來(lái)說(shuō)可以利用 CPU 特權(quán)來(lái)保護(hù)這些頁(yè)表所在的內(nèi)存,當(dāng)客戶操作系統(tǒng)需要更
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1