作業系統基礎之儲存器管理

2021-08-03 02:05:47 字數 1558 閱讀 6963

程式的鏈結

動態分割槽分配

根據程序的實際需要,動態為其分配記憶體空間

空閒分割槽鏈

分割槽分配演算法

分割槽分配操作

夥伴系統

動態重定位分割槽分配

緊湊/拼接:通過移動記憶體那種作業的位置,把原來多個分散的小分割槽拼接成乙個大分割槽的方式,每次緊湊之後,都需要對移動了的程式或者資料進行重定位

對換:把記憶體中暫時不能執行的程序或者暫時不用的程式和資料調出到外存上,以便騰出足夠的記憶體空間,再把已具備執行條件的程序或程序所需要的程式和資料調入記憶體

頁表:為了保證程序能夠正確的執行,也就是能在記憶體中找到每個頁面所對應的物理塊,系統需要為每個程序建立乙個頁表,記錄了程序空間中所有頁以及其對應的物理頁的情況

查詢時,先看當前快表中是否有該項,如果有,則直接使用該項,如果沒有,則按照前面內容查詢,然後將其快取在快表中

兩級和多級頁表

外層頁表中存放內層頁表的實體地址,借助外層頁表暫存器即可讀出外層頁表的,然後計算得到內層頁表,然後可以去取出對應的物理塊位址

段表:系統為每個段分配乙個連續的分割槽,而程序中的各個段可以離散地移入不同的分割槽中

常規儲存器管理的特徵

- 一次性:要求將作業全部裝入記憶體後才能執行

- 駐留性:作業裝入記憶體後,便一直駐留在記憶體中,直至作業執行結束

虛擬儲存器:具有請求調入和置換功能,能從邏輯上對記憶體容量加以擴充的一種儲存器系統,其邏輯容量由記憶體容量和外存容量之和所確定,其執行速度接近於記憶體速度,而成本接近於外存。

虛擬儲存器的實現方法

請求分段系統:以分段機制為基礎,置換時以段為單位

虛擬儲存器的特徵

缺頁中斷機制:一條指令在執行期間可能會發生多次缺頁中斷,系統必須保證能保持多次中斷的狀態,並且保證最後能返回到中斷前產生缺頁中斷的指令處繼續執行

位址變換機構

物理塊的分配演算法

確定從何處調入頁面

頁面調入過程

最佳優先置換演算法

最佳優先置換演算法是一種理想的演算法,實際上很難實現,基本思想是:每次選擇以後不會再使用的頁面,或者是在最長未來時間內不再被訪問的頁面進行替換

先進先出頁面置換演算法

思想:淘汰最先進入記憶體的頁面,也就是選擇在記憶體中駐留時間最久的頁面

最近最久未使用置換演算法(lru least recently used)

思想:為每個頁面新增乙個訪問字段,用來記錄乙個頁面自上次被訪問以來所經歷的時間t,當淘汰乙個頁面時,選擇現有頁面中其中t值最大的,即最近最久未使用的頁面進行替換

需要硬體

- 暫存器:為每個頁面設定乙個計數暫存器,每隔一定時間向右移動一位,替換時選擇值最小的頁面進行替換

- 棧:用於儲存當前使用的各個頁面的頁面號

clock置換演算法

由於lru演算法要求要有比較多的硬體支援,所以實際中不經常使用,一般使用其替代演算法如clock演算法等

改進型clock演算法

最少使用演算法(lfu least frequently used)

基本思想同lru

頁面緩衝演算法(pba)

思想:使用兩個佇列,乙個空閒乙個存放頁面,等到一定數量再將其寫入到磁碟上

作業系統之儲存器管理

儲存器的層次如下圖 上圖中,暫存器和主儲存器稱為可執行儲存器。快取記憶體的作用是緩和cpu與記憶體之間的速度差異,主要由硬體實現。磁碟快取的出現是由於記憶體容量不夠,需要引入磁碟,然而磁碟的i o速度遠低於主存的訪問速度,為了緩和兩者之間在速度上的差異,設定了磁碟快取。磁碟快取與快取記憶體不同,它本...

作業系統 儲存器管理

程式的裝入和鏈結 連續分配方式 基本分頁儲存管理方式 基本分段儲存管理方式 虛擬儲存器的基本概念 請求分頁儲存管理方式 頁面置換演算法 請求分段儲存管理方式 使用者程式要在系統中執行,必須先將它裝入記憶體,然後由編譯程式 compiler 對使用者源程式進行編譯,形成若干個目標模組 object m...

作業系統 儲存器管理

第四章 儲存器管理 儲存器的層次結構 儲存器的三層結構,cpu暫存器 暫存器 主存 快取記憶體,主儲存器,磁碟快取 輔存 固定磁碟,可移動儲存介質 處理機都是從主儲存器中取得指令和資料,將取得指令放入指令暫存器中,資料放入資料暫存器中 暫存器存放運算元,作位址暫存器加快位址轉換速度 快取記憶體用以緩...