作業系統與硬體
在使用巢狀分頁(nested paging,兩層位址轉換)的虛擬化中,關於硬體進行位址轉換的說明,下列何者正確?
- A只走訪虛擬機器作業系統的頁表,不使用虛擬機器監視器的表
- B分兩層轉換:客體虛擬位址→客體實體位址→主機實體位址
- C虛擬機器監視器攔截所有記憶體存取,以軟體逐次轉換
查看答案與解析
正確答案:B. 分兩層轉換:客體虛擬位址→客體實體位址→主機實體位址
虛擬機器的作業系統以為自己管理的實體位址(客體實體位址)就是真正的記憶體,但實際上它位於虛擬機器監視器所分配的另一處。在巢狀分頁中,硬體先用客體的頁表轉換到客體實體位址,再用虛擬機器監視器的表轉換到主機的實體位址。如此一來,客體每次改寫頁表時,就不需要虛擬機器監視器介入。若所有存取都以軟體轉換,速度會太慢。
- A. 也會使用虛擬機器監視器的表,分兩層轉換。
- B. 正確。分兩層轉換:客體虛擬→客體實體→主機實體。
- C. 全部以軟體轉換會太慢。