第四章存儲器管理

4.1程序的裝入和鏈接

1、創(chuàng)建進(jìn)程的第一件事:將程序和數(shù)據(jù)裝入內(nèi)存。

2、程序的裝入和鏈接

1)編譯

2)鏈接

3)裝入

3、地址的概念

1)邏輯地址(相對地址,虛地址)

2)物理地址(絕對地址,實地址)

4、程序裝入中的地址處理

邏輯地址? ======?? 物理地址:

1)絕對裝入方式

邏輯地址 ->重定位->物理地址:

2)靜態(tài)可重定位裝入方式

3)動態(tài)運行時(重定位)裝入方式

5、不同的程序鏈接裝入方式(使用內(nèi)存的時機)

根據(jù)鏈接時間的不同,分成三種:

①靜態(tài)鏈接:裝入運行前將多個目標(biāo)模塊及所需庫函數(shù)鏈接成一個整體,以后不再拆開。

②裝入時動態(tài)鏈接:裝入內(nèi)存時,邊裝入邊鏈接的鏈接方式。

③運行時動態(tài)鏈接:對某些目標(biāo)模塊的鏈接,在執(zhí)行中需要該目標(biāo)模塊時,才對它進(jìn)行鏈接。

4.2連續(xù)分配存儲管理方式

1、連續(xù)分配方式

(1)單一連續(xù)分配

(2)固定分區(qū)分配

? ? ? ? 具體實現(xiàn):

? ? ? ? 1)如何劃分分區(qū)大小

? ? ? ? 2)需要的數(shù)據(jù)結(jié)構(gòu)

? ? ? ? 3)分配回收操作

(3)動態(tài)分區(qū)分配

優(yōu)點:并發(fā)進(jìn)程數(shù)沒有固定數(shù)的限制,不產(chǎn)生內(nèi)碎片。

缺點:有外碎片

具體實現(xiàn):

1)分區(qū)分配中的數(shù)據(jù)結(jié)構(gòu)

2)分區(qū)分配算法

①首次適應(yīng)算法FF

優(yōu)點:優(yōu)先利用內(nèi)存低址部分,保留了高地址部分的大空閑區(qū);

缺點:但低址部分不斷劃分,會產(chǎn)生較多小碎片;而且每次查找從低址部分開始,會逐漸增加查找開銷。

②循環(huán)首次適應(yīng)算法

優(yōu)點:空閑分區(qū)分布均勻,減少查找開銷

缺點:缺乏大的空閑分區(qū)

③最佳適應(yīng)算法

缺點:每次找到最合適大小的分區(qū)割下的空閑區(qū)也總是最小,會產(chǎn)生許多難以利用的小空閑區(qū)

④最差適應(yīng)算法

基本不留下小空閑分區(qū),但會出現(xiàn)缺乏較大的空閑分區(qū)的情況。

⑤快速適應(yīng)算法

能快速找到合適分區(qū),但鏈表信息會很多;實際上是空間換時間。

3)分區(qū)分配操作

(4)動態(tài)重定位分區(qū)分配

動態(tài)重定位分區(qū)分配算法與動態(tài)分區(qū)分配算法基本相同,差別在于增加了緊湊的功能。

(5)內(nèi)存空間管理之對換

對換空間的管理

4.3-4.4存儲管理的離散分配方式

(一)基本分頁存儲管理

1、分頁的目的是更細(xì)粒度的處理空間,減少粗放管理的浪費或開銷問題。

2、物理劃分塊的大小=邏輯劃分的頁的大小

3、頁表:為了找到被離散分配到內(nèi)存中的作業(yè),記錄每個作業(yè)各頁映射到哪個物理塊,形成的頁面映射表

4、每個作業(yè)有自己的頁表

5、離散分配過程:

?找空? ??放入? ??記錄

6、連續(xù)方式下,每條指令用基地址+偏移量即可找到其物理存放的地址。

7、一作業(yè)所有指令在用戶地址空間是順序編址

8、地址變換機構(gòu)實現(xiàn)地址映射

分頁式系統(tǒng)中的地址變換機構(gòu)

9、設(shè)一次查找訪問快表時間為t' ,則

?EAT= a*t' + (1-a)(t'+t)? + t = 2t +t' -t*a

10、

具有快表的分頁系統(tǒng)的地址變換機構(gòu)?

11、進(jìn)程分頁離散存放,但頁表的數(shù)據(jù)是連續(xù)在存放內(nèi)存的。

12、兩級頁表:為離散分配的頁表再建立一張頁表,稱為“外層頁表”,其每個表項記錄了頁表頁面所在的物理塊號。

13、

具有兩級頁表的地址變換機構(gòu)

14、反置頁表:站在物理塊的角度,記錄占用它的已調(diào)入內(nèi)存的進(jìn)程標(biāo)識和頁號。系統(tǒng)中只需一張該表即可。

(二)基本分段存儲管理

1、分段存儲管理:作業(yè)分成若干段,各段可離散放入內(nèi)存,段內(nèi)仍連續(xù)存放。

2、基本原理:程序通過分段劃分為多個模塊,每個段定義一組邏輯信息。

3、地址結(jié)構(gòu):段號+段內(nèi)地址

4、段表:記錄每段實際存放的物理地址

5、

分段系統(tǒng)地址變換機構(gòu)

6、分頁和分段的主要區(qū)別(重點)

1)需求:分頁是出于系統(tǒng)管理的需要,是一種信息的物理劃分單位,分段是出于用戶應(yīng)用的需要,是一種邏輯單位,通常包含一組意義相對完整的信息。

一條指令或一個操作數(shù)可能會跨越兩個頁的分界處,而不會跨越兩個段的分界處。

2)大?。喉摯笮∈窍到y(tǒng)固定的,而段大小則通常不固定。分段沒有內(nèi)碎片,但連續(xù)存放段產(chǎn)生外碎片,可以通過內(nèi)存緊縮來消除。相對而言分頁空間利用率高。

3)邏輯地址:

分頁是一維的,各個模塊在鏈接時必須組織成同一個地址空間;

分段是二維的,各個模塊在鏈接時可以每個段組織成一個地址空間。

4)其他:通常段比頁大,因而段表比頁表短,可以縮短查找時間,提高訪問速度。分段模式下,還可針對不同類型采取不同的保護;按段為單位來進(jìn)行共享

(三)段頁式存儲管理

1、基本原理

1)將用戶程序分成若干段,并為每個段賦予一個段名。

2)把每個段分成若干頁

3)地址結(jié)構(gòu)包括段號、段內(nèi)頁號和頁內(nèi)地址三部分

2、

段頁式系統(tǒng)的地址變換機構(gòu)?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 存儲器的層次結(jié)構(gòu)‘ 多層結(jié)構(gòu)的存儲器系統(tǒng) 存儲器的多層結(jié)構(gòu)。 存儲層次至少應(yīng)具有三級:最高層為 CPU 寄存器,中...
    傻傻傻瓜_d432閱讀 914評論 0 0
  • 1.程序的裝入和鏈接 1)程序的裝入和鏈接 (1)地址的概念 邏輯地址(相對地址,虛地址) 物理地址(絕對地址,實...
    Pakho柏豪閱讀 449評論 0 0
  • 第四章 存儲器管理 一、單項選擇題 1、存儲管理的目的是( C )。 A.方便用戶 B.提高內(nèi)存利用率 C.方便用...
    黃一倚閱讀 7,621評論 1 0
  • 四月如詩,喚醒一切美好~打開了春天一雙翅膀……淺淺的綠意渲染了濃濃的生機,淡淡的花香裝點出淡淡的春意,悠悠的白云點...
    筱茉莉2018閱讀 312評論 0 0
  • 啊,怎么辦。我太想我姐姐了。我不想她結(jié)婚。怕她受委屈。我現(xiàn)在要怎么做,我很難過。我也覺得小時候錯了,沒有好好待她。...
    小公主1111閱讀 1,419評論 0 0

友情鏈接更多精彩內(nèi)容