第四章 存儲管理 2 內(nèi)存空間管理---連續(xù)

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

內(nèi)存分為系統(tǒng)區(qū)和用戶區(qū)兩部分:

n系統(tǒng)區(qū):僅提供給OS使用,通常放在內(nèi)存低址部分

n用戶區(qū):除系統(tǒng)區(qū)以外的全部內(nèi)存空間份帐,提供給用戶使用。

u最簡單的一種存儲管理方式,只能用于單用戶碳胳、單任務(wù)的操作系統(tǒng)中。

n優(yōu)點:易于管理沫勿。

n缺點:對要求內(nèi)存空間少的程序挨约,造成內(nèi)存浪費;程序全部裝入产雹,很少使用的程序部分也占用內(nèi)存诫惭。

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

? 把內(nèi)存分為一些大小相等或不等的分區(qū)(partition),每個應(yīng)用進程占用一個分區(qū)蔓挖。操作系統(tǒng)占用其中一個分區(qū)夕土。

u提高:支持多個程序并發(fā)執(zhí)行,適用于多道程序系統(tǒng)和分時系統(tǒng)瘟判。最早的多道程序存儲管理方式怨绣。

劃分為幾個分區(qū),便只允許幾道作業(yè)并發(fā)

u具體實現(xiàn):

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

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

3)分配回收操作

? 1)如何劃分分區(qū)大锌交瘛:

n分區(qū)大小相等:只適合于多個相同程序的并發(fā)執(zhí)行(處理多個類型相同的對象)梨熙。缺乏靈活性。

n分區(qū)大小不等:多個小分區(qū)刀诬、適量的中等分區(qū)咽扇、少量的大分區(qū)邪财。根據(jù)程序的大小,分配當前空閑的质欲、適當大小的分區(qū)树埠。

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

n建立一記錄相關(guān)信息的分區(qū)表(或分區(qū)鏈表),表項有:

|起始位置 | 大小 | 狀態(tài) |

n分區(qū)表中嘶伟,表項值隨著內(nèi)存的分配和釋放而動態(tài)改變

? 3)程序分配內(nèi)存的過程:

p也可將分區(qū)表分為兩個表格:空閑分區(qū)表/占用分區(qū)表怎憋。從而減小每個表格長度。

p檢索算法:空閑分區(qū)表可能按不同分配算法采用不同方式對表項排序(將分區(qū)按大小排隊或按分區(qū)地址高低排序)九昧。

p過程:檢索空閑分區(qū)表绊袋;找出一個滿足要求且尚未分配的分區(qū),分配給請求程序铸鹰;若未找到大小足夠的分區(qū)癌别,則拒絕為該用戶程序分配內(nèi)存。

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

u?分區(qū)的大小不固定:在裝入程序時根據(jù)進程實際需要蹋笼,動態(tài)分配內(nèi)存空間展姐,即——需要多少劃分多少。

u空閑分區(qū)表項:從1項到n項:

? 內(nèi)存會從初始的一個大分區(qū)不斷被劃分剖毯、回收從而形成內(nèi)存中的多個分區(qū)圾笨。

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

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

缺點:有外碎片(分區(qū)間無法利用的空間)

具體實現(xiàn):

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

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

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

1)數(shù)據(jù)結(jié)構(gòu)

①空閑分區(qū)表:

?記錄每個空閑分區(qū)的情況。

?每個空閑分區(qū)對應(yīng)一個表目胶滋,包括分區(qū)序號谍婉、分區(qū)始址及分區(qū)的大小等數(shù)據(jù)項。

②空閑分區(qū)鏈:

?每個分區(qū)的起始部分镀钓,設(shè)置用于控制分區(qū)分配的信息,及用于鏈接各分區(qū)的前向指針镀迂;

?分區(qū)尾部則設(shè)置一后向指針丁溅,在分區(qū)末尾重復設(shè)置狀態(tài)位和分區(qū)大小表目方便檢索。

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

? 動態(tài)分區(qū)方式探遵,分區(qū)多窟赏、大小差異各不相同,此時把一個新作業(yè)裝入內(nèi)存箱季,更需選擇一個合適的分配算法涯穷,從空閑分區(qū)表/鏈中選出一合適分區(qū)

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

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

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

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

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

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

v分配內(nèi)存

v找到滿足需要的合適分區(qū),劃出進程需要的空間

if s<=size藏雏,將整個分區(qū)分配給請求者

if s> size拷况,按請求的大小劃出一塊內(nèi)存空間分配出去,余下部分留在空閑鏈中,將分配區(qū)首址返回給調(diào)用者赚瘦。

v回收內(nèi)存

v進程運行完畢釋放內(nèi)存時粟誓,系統(tǒng)根據(jù)回收區(qū)首址a,在空閑分區(qū)鏈(表)中找到相應(yīng)插入點起意,根據(jù)情況修改空閑分區(qū)信息鹰服,可能會進行空閑分區(qū)的合并:


(4)動態(tài)重定位分區(qū)分配——有緊湊功能的動態(tài)分區(qū)分配

用戶程序在內(nèi)存中移動,將空閑空間緊湊起來提高空間利用率揽咕。但必然需要地址變化悲酷,增加“重定位”工作。

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

當內(nèi)存空間還是滿足不了需求時亲善,引入“對換”思想:

? 把內(nèi)存中暫時不能運行设易、或暫時不用的程序和數(shù)據(jù)調(diào)到外存上,以騰出足夠的內(nèi)存逗爹;把已具備運行條件的進程和進程所需要的程序和數(shù)據(jù)亡嫌,調(diào)入內(nèi)存。

u按對換單位分類:

?整體對換(或進程對換):以整個進程為單位(連續(xù)分配)

?頁面對換或分段對換:以頁或段為單位(離散分配)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末掘而,一起剝皮案震驚了整個濱河市挟冠,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌袍睡,老刑警劉巖知染,帶你破解...
    沈念sama閱讀 221,635評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異斑胜,居然都是意外死亡控淡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評論 3 399
  • 文/潘曉璐 我一進店門止潘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來掺炭,“玉大人,你說我怎么就攤上這事凭戴〗ǎ” “怎么了?”我有些...
    開封第一講書人閱讀 168,083評論 0 360
  • 文/不壞的土叔 我叫張陵么夫,是天一觀的道長者冤。 經(jīng)常有香客問我,道長档痪,這世上最難降的妖魔是什么涉枫? 我笑而不...
    開封第一講書人閱讀 59,640評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮腐螟,結(jié)果婚禮上愿汰,老公的妹妹穿的比我還像新娘困后。我一直安慰自己,他們只是感情好尼桶,可當我...
    茶點故事閱讀 68,640評論 6 397
  • 文/花漫 我一把揭開白布操灿。 她就那樣靜靜地躺著,像睡著了一般泵督。 火紅的嫁衣襯著肌膚如雪趾盐。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,262評論 1 308
  • 那天小腊,我揣著相機與錄音救鲤,去河邊找鬼。 笑死秩冈,一個胖子當著我的面吹牛本缠,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播入问,決...
    沈念sama閱讀 40,833評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼丹锹,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了芬失?” 一聲冷哼從身側(cè)響起楣黍,我...
    開封第一講書人閱讀 39,736評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎棱烂,沒想到半個月后租漂,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,280評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡颊糜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,369評論 3 340
  • 正文 我和宋清朗相戀三年哩治,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片衬鱼。...
    茶點故事閱讀 40,503評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡业筏,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出鸟赫,到底是詐尸還是另有隱情蒜胖,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布惯疙,位于F島的核電站,受9級特大地震影響妖啥,放射性物質(zhì)發(fā)生泄漏霉颠。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,870評論 3 333
  • 文/蒙蒙 一荆虱、第九天 我趴在偏房一處隱蔽的房頂上張望蒿偎。 院中可真熱鬧朽们,春花似錦、人聲如沸诉位。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽苍糠。三九已至叁丧,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間岳瞭,已是汗流浹背拥娄。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留瞳筏,地道東北人稚瘾。 一個月前我還...
    沈念sama閱讀 48,909評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像姚炕,于是被迫代替她去往敵國和親摊欠。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,512評論 2 359

推薦閱讀更多精彩內(nèi)容