儲存管理

gman344發表於2021-01-02

相關概念:

  抖動:頁面頻繁換入換出的現象叫做抖動,其主要原因是程式訪問的頁面數目高於物理頁幀數目

  工作集:指在某段時間內,程式要訪問的頁面集合。為了防止系統出現抖動現象,需要選擇合適的工作集大小

  

一、連續分配

連續分配是指為一個使用者程式分配一個連續的記憶體空間。



二、非連續分配

非連續分配允許一個程式分散地裝入到不相鄰的記憶體分割槽中

1、基本分頁

把記憶體空間劃分為大小相等且固定的塊,稱為頁框;每個程式劃分為大小相等的塊,稱為頁。每個頁通過頁表對應一個頁框


從邏輯地址到實體地址的轉換如下:

(1)計算頁號P=A/L和頁內偏移量W=A%L(L表示頁大小)

(2)比較也好P和頁表長度M,若P>=M,則產生越界中斷,負責繼續執行

(3)頁號P對應的頁表項地址=頁表起始地址F+頁號P*頁表項長度,取出頁表項的內容,即為物理塊號

(4)計算實體地址E=b*L+W


快表:

因為基本頁式儲存要訪問兩次記憶體,速度很慢,因此使用快表---一種高速緩衝儲存器來儲存最近經常訪問的頁面



兩級頁表:

若頁表佔用的記憶體頁面很多,則採用兩級頁表的方式。可以理解為頁表的頁表,第一層頁表指向的是第二層頁表的地址,一般第一層頁表只有一個頁面,這樣就可以不用把所有頁表都調入記憶體,只需要用他的時候才調入(虛擬儲存技術)


2、基本分段儲存

分段管理的方式是考慮了使用者和程式設計師,以滿足方便程式設計、資訊保護、動態連結等多方面的需要。   邏輯地址中的段號和段內偏移量必須由使用者顯示提供。



3、段頁式

把作業的地址空間首先分成若干個邏輯段,每個段都有自己的段號,然後再將每個段分成若干個大小固定的頁




三、記憶體擴充

LRU頁面置換演算法舉例:


相關文章