操作系統實驗筆記(七)-linux存儲管理

【實驗目的與要求】

1、瞭解虛擬存儲技術的特點

2、掌握請求頁式存儲管理的頁面置換算法

3、瞭解頁面大小和內存實際容量對命中率的影響

 

【實驗原理】

分頁存儲管理將一個進程的邏輯地址空間分成若干大小相等的片,成爲頁面或頁。

在進程運行過程中,若其所要訪問的頁面不在內存而需要把他們調入內存,但內存已無空閒時,爲了保證該進程能正常運行,系統必須從內存中調出一頁程序或數據,送磁盤的對換區中。但應將哪個頁面調出,須根據一定的算法來確定。通常,把選擇換出頁面的算法稱爲頁面置換算法(Page Replacement Algorithm)。

一個好的頁面置換算法,應具有較低的頁面更換頻率。從理論上講,應將那些以後不再會訪問的頁面換出,或將那些在較長時間內不會再訪問的頁面調出。

1.     最佳置換算法OPT(Optimal)

2.     先進先出頁面置換算法FIFO

3.     最近最久未使用置換算法LRU

 

【實驗內容】

1、通過隨機數產生一個指令序列,共320條指令。指令的地址按下述原則生成:

l  50%的指令是順序執行的

l  25%的指令是均勻分佈在前地址部分

l  25%的指令是均勻分佈在後地址部分

具體的實施方法是:

l  在【0,319】的指令地址之間隨機選取一起點m;

l  順序執行一條指令,即執行地址爲m+1的指令;

l  在前地址【0,m+1】中隨機選取一條指令並執行,該指令的地址爲m’;

l  順序執行一條指令,其地址爲m’+1;

l  在後地址[m’+2,319]中隨機選取一條指令並執行;

l  重複上述步驟,直到執行320次指令。

2、將指令序列變換成爲頁地址流

設:

l  頁面大小爲1K;

l  用戶內存容量爲4頁到32頁;

l  用戶虛擬容量爲32K。

在用戶虛存中,按每K存放10條指令排列虛擬地址,即320條指令在虛存中的存放方式爲:

第0條~第9條指令爲第0頁(對應虛存地址爲【0,9】);

第10條~第19條指令爲第1頁(對應虛存地址爲【10,19】);

       …

第310條~第319條指令爲第31頁(對應虛存地址爲【310,319】)。

按以上方式,用戶指令可組成32頁。

3、計算並輸出下列各種算法在不同內存容量下的命中率。

l  先進先出的算法(FIFO);

l  最近最少使用算法(LRU);

l  最佳淘汰算法(OPT):先淘汰最不常用的頁地址;

其中OPT爲選作內容。

命中率 = 1 – 頁面時效次數/頁地址流長度

在本實驗中,頁地址流長度爲320,頁面失效次數爲每次訪問相應指令時,該指令所對應的頁不在內存的次數。

 

https://wenku.baidu.com/view/2ff6715d79563c1ec5da71a0.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章