一、問題:某計算機系統的主存按位元組編址。邏輯地址和實體地址都是32位。採用分頁儲存管理方式,頁的大小為8K。已知頁表內容如下表所示
0 | 6 |
1 | 5 |
2 | 9 |
... | ... |
試回答下列問題:
1.邏輯地址中,頁號和頁內偏移的位數分別是多少?
2.如果頁表項大小為4位元組,則一個程序的頁表最大為多少?
3.設某邏輯地址為0x0000 431E,其頁內偏移量是多少?該邏輯地址對應的實體地址是多少?
二、參考答案
1.
頁內偏移位數 = 頁大小二進位制的次冪 = 8 * 1024 = 8192 = 213 = 13,故頁內偏移位數是13
頁號位數 = 邏輯地址位數 - 頁內偏移位數 = 32 - 13 = 19,故頁號位數是19
2.頁表大小最大 = 4 * 219 = 2M
3.
邏輯地址0x0000 431E的頁內偏移量= 0~12位二進位制 = 0x31E,頁號 = 13~31位二進位制 = 0x2
根據頁表獲得2頁號的頁框號為9,故頁框號=9
實體地址 = 頁框號 * 頁大小 + 頁內偏移量 = 9 * 8K +0x31E=9 * 8192 + 793 = 74526 = 0x0001 231E