作業系統綜合題之“分頁儲存系統,頁號和頁內偏移的位數 和 頁表最大多少 和 給一個邏輯地址計算偏移量和實體地址”

骚哥發表於2024-04-08

一、問題:某計算機系統的主存按位元組編址。邏輯地址和實體地址都是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

相關文章