1.基本分頁儲存管理
頁面的概念:記憶體劃分成多個小單元,每個單元k大小,稱(物理)塊。作業也按k單位大小劃分成片,稱為頁面。
物理劃分塊的大小 = 邏輯劃分的頁的大小
頁表的概念:
為了找到被離散分配到記憶體中的作業,記錄每個作業各頁對映到哪個物理塊,形成的頁面對映表,簡稱頁表。
每個作業有自己的頁表
頁表的作用:
頁號到物理塊號的位址對映
要找到作業a
à關鍵是找到頁表(pcb)
à根據頁表找物理塊
連續方式下,每條指令用基位址+偏移量即可找到其物理存放的位址。
離散時
ø頁號+頁內位址(即頁內偏移)
ø關鍵的計算是:根據系統頁面大小找到不同意義二進位制位的分界線。
ø從位址中分析出頁號後,位址對映只需要把頁號改為對應物理塊號,偏移不變,即可找到記憶體中實際位置。
例題:
上例若作業頁表如右表所示,任意取一使用者程式指令,如第1011個指令,如何知道放在記憶體的**?
•重要引數:系統頁面大小
=8b
à頁內的所有指令編址用了3位
à1000
à1011中的1代表是1號頁,而011代表是該頁中偏移3b後的第4條,
•根據頁表,1號頁存在7#物理塊上。
•7#物理塊又在哪?
à物理塊的編址也是8b大小決定的,位址結構類似
à7#塊的第一條指令位址是111000。第7塊中向下偏移3就是要找的指令。其位址就是111011。
頁號塊號01
1729
315兩級頁表
將頁表分頁,並離散地將頁表的各個頁面分別存放在不同的物理塊中
為離散分配的頁表再建立一張頁表,稱為「外層頁表」,其每個表項記錄了頁表頁面所在的物理塊號。
2.基本分段儲存管理方式
從提高記憶體利用率角度;
固定分割槽à動態分割槽à分頁
從滿足並方便使用者(程式設計師)和使用上的要求角度:
分段儲存管理:作業分成若干段,各段可離散放入記憶體,段內仍連續存放。
方便程式設計:如彙編中通過段:偏移確定資料位置
資訊共享:同地位的資料放在一塊方便進行共享設定
資訊保護
動態增長:動態增長的資料段事先固定記憶體不方便
分段系統的基本原理
程式通過分段(segmentation)劃分為多個模組,每個段定義一組邏輯資訊。如**段(主程式段main,子程式段x)、資料段d、棧段s等。
誰決定乙個程式分幾段,每段多大?
編譯程式(基於源**)
段的特點
每段有自己的名字(一般用段號做名),都從0編址,可分別編寫和編譯。裝入記憶體時,每段賦予各段乙個段號。
每段佔據一塊連續的記憶體。(即有離散的分段,又有連續的記憶體使用)
各段大小不等。
分頁和分段的主要區別★ ★ ★
1.需求:分頁是出於系統管理的需要,是一種資訊的物理劃分單位,分段是出於使用者應用的需要,是一種邏輯單位,通常包含一組意義相對完整的資訊。
n一條指令或乙個運算元可能會跨越兩個頁的分界處,而不會跨越兩個段的分界處。
2.大小:頁大小是系統固定的,而段大小則通常不固定。分段沒有內碎片,但連續存放段產生外碎片,可以通過記憶體緊縮來消除。相對而言分頁空間利用率高。3.n
n4.其他:通常段比頁大,因而段表比頁表短,可以縮短查詢時間,提高訪問速度。分段模式下,還可針對不同型別採取不同的保護;按段為單位來進行共享
3.段頁式儲存管理方式
① 基本原理
u將使用者程式分成若干段,並為每個段賦予乙個段名。
u把每個段分成若干頁
u位址結構包括段號、段內頁號和頁內位址三部分
作業系統第四章 儲存器管理
1.儲存器的層次管理 訪問速度從上往下依次降低 可重定位裝入方式 多道程式環境下的起始位址是0開始,根據記憶體 當情況,將裝入模組裝入合適位置 3.連續分配方式 對換 將記憶體上暫時不能執行的程序或者暫時不用的程式和資料調出到外存上。提高記憶體利用率。可分為程序對換 頁面對換 分段對換。為了實現程序...
作業系統第四章 儲存管理子系統
重點 分頁 分段技術 1.儲存器層次結構 滿足不同位置資料需求 速度快 不易失 你比如說直接跟cpu對接的 暫存器 cache 記憶體 外存 常理解為硬碟 他們讀取的速度不一樣 易失性也不一樣。負責管理上面的結構的 儲存管理器。程序的換進換出和頁面置換都是記憶體不足造成的。2.單道程式儲存管理 把整...
作業系統第四章
2 分割槽分配演算法 動態分割槽方式,分割槽多 大小差異各不相同,此時把乙個新作業裝入記憶體,更需選擇乙個合適的分配演算法,從空閒分割槽表 鏈中選出一合適分割槽 首次適應演算法ff 迴圈首次適應演算法 最佳適應演算法 最差適應演算法 快速適應演算法 4 動態重定位分割槽分配 有緊湊功能的動態分割槽分...