頁式地址變換-虛地址結構(整理)
虛地址結構(程式字)
虛地址是使用者程式中的邏輯地址,它包括頁號和頁內地址(頁內位移)。
區分頁號和頁內地址的依椐是頁的大小,頁內地址佔虛地址的低位部分,頁號佔虛地址的高位部分。
有關頁式地址對映的計算
1. 虛地址(邏輯地址、程式地址)以十六進位制、八進位制、二進位制的形式給出
(1)將虛地址轉換成二進位制的數;
(2)按頁的大小分離出頁號和位移量(低位部分是位移量,高位部分是頁號);
(3)根據題意產生頁表;
(4)將位移量直接複製到記憶體地址暫存器的低位部分;
(5)以頁號查頁表,得到對應頁裝入記憶體的塊號,並將塊號轉換成二進位制數填入地址暫存器的高位部分,從而形成記憶體地址。
2.虛地址以十進位制數給出
(1)頁號=虛地址%頁大小
(2)位移量=虛地址 mod 頁大小
(3)根據題意產生頁表;
(4)以頁號查頁表,得到對應頁裝入記憶體的塊號
(5)記憶體地址=塊號×頁大小+位移量
圖一示例
圖1.作業1有350行,分為4頁,每一頁100行
例題例1:有一系統採用頁式儲存管理,有一作業大小是8KB,頁大小為2KB,依次裝入記憶體的第7、9、A、5塊,試將虛地址0AFEH轉換成記憶體地址。
虛地址0AFEH 0000 1010 1111 1110
P=1 W=010 1111 1110
MR=0100 1010 1111 1110=4AFEH
例2:有一系統採用頁式儲存管理,有一作業大小是8KB,頁大小為2KB,依次裝入記憶體的第7、9、10、5塊,試將虛地址7145轉換成記憶體地址。
虛地址 3412 P=3412 % 2048 =1 W= 3412 mod 2048= 1364
MR=9*2048+1364=19796
虛地址3412的記憶體地址是:19796