作業系統›Ch8 虛擬記憶體第 7 題/共 47 題
7. Nested Page Table、Virtualization、Two-stage Translation
#OS-08-007中Nested Page TableVirtualizationTwo-stage Translation
現代CPU架構提供nested page tables (NPTs)來支援虛擬化。MMU硬體執行兩階段的記憶體轉換:第一階段用virtual machine (VM)的page tables (PTs)把virtual addresses (VAs)轉換成intermediate physical addresses (IPAs),VM的PTs本身是用IPAs指定的。第二階段用NPTs把IPAs轉換成physical addresses (PAs)。所有page tables都是4K bytes,一個page table entry是8 bytes。所有VAs與IPAs都是39 bits,PTs與NPTs包含2M或4K bytes的mappings。假設硬體沒有實作TLB或cache。若同時啟用PTs與NPTs,硬體要完成一次兩階段記憶體轉換(例如把某個VM的VA轉成PA),可能需要的記憶體存取次數為何?
📄 台大112
▤完整推導請見《WH 資工筆記 · 作業系統》Ch8 虛擬記憶體