更詳細例子博客:http://blog.sina.com.cn/s/blog_625eda0b01016kb9.htmlhtml
以一個例子的形式講解邏輯地址到物理地址的轉換:
某虛擬存儲器的用戶編程空間共32個頁面,每頁爲1KB,內存爲16KB。假定某時刻一用戶頁表中已調入內存的頁面的頁號和物理塊號的對照表以下:
編程
頁號 |
物理塊號 |
0 |
3 |
1 |
7 |
2 |
11 |
3 |
8 |
則邏輯地址0A5C(H)所對應的物理地址是什麼?要求:寫出主要計算過程。
解題過程:
首先要知道頁式存儲管理的邏輯地址分爲兩部分:頁號和頁內地址。物理地址分爲兩部分:
關係爲:邏輯地址= 頁號+頁內地址d
物理地址= 塊號*塊長度( 等於頁面長度 L )+頁內地址;
頁號: p = lnt( 邏輯地址 A / 頁面長度 L ); d = 邏輯地址 A % 頁面長度 L (取餘) htm
分析題:已知:用戶編程空間共32個頁面,2ˆ5 = 32 得知頁號部分佔5位,由「每頁爲1KB」,1K=2^10,可知內頁地址佔10位。
由「內存爲16KB」,2^4=16得知塊號佔4位。
邏輯地址0A5C(H)所對應的二進制表示形式是:0000101001011100,後十位1001011100是頁內地址,
00010(本題特例,由於頁面長度爲1KB)爲爲頁號,頁號化爲十進制是2,在對照表中找到2對應的物理塊號是11,11轉換二進制是1011,11* 2^10 + d便可求出物理地址爲10111001011100,化成十六進制爲2 E5C;
即則邏輯地址0A5C(H)所對應的物理地址是2E5C;
blog