久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > 操作系統(tǒng)幾種主要的頁面置換算法分別是用什么數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的?

操作系統(tǒng)幾種主要的頁面置換算法分別是用什么數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的?

來源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-10-11 05:20:02 1696972802

一、操作系統(tǒng)幾種主要的頁面置換算法

算法通常只是描述解決問題的一個(gè)步驟,具體用什么數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)則是視情況而定。LRU“實(shí)現(xiàn)起來比較困難,且開銷大是因?yàn)長(zhǎng)RU算法希望淘汰最后未使用的頁面,而CLOCK算法則放低的要求,較久未使用即可,不一定是最久的。CLOCK算法恰好可以充分使用現(xiàn)有的為“請(qǐng)求分頁存儲(chǔ)管理“設(shè)計(jì)的硬件機(jī)構(gòu),所以也會(huì)更加高效,而LRU則難以使用現(xiàn)成的硬件機(jī)構(gòu)來加速算法執(zhí)行。

LRU又稱最近最少使用,意為每次都淘汰最久未使用的頁面。按照LRU的思想,一種實(shí)現(xiàn)思路如下三點(diǎn):

開辟一塊內(nèi)存空間用來記錄每個(gè)頁面最后一次使用的時(shí)間(這里假如使用heap或者無序array來記錄);每次訪存都要去維護(hù)這個(gè)時(shí)間;要淘汰頁面的時(shí)候選擇出最久未使用的頁面予以淘汰;

下面來逐一分析這三點(diǎn):

名列前茅點(diǎn):這塊內(nèi)存空間不能太小,否則極易導(dǎo)致數(shù)據(jù)溢出,尤其是對(duì)于運(yùn)行在server上OS來說,可能一開機(jī)就很久不關(guān)機(jī),溢出的可能性更大。這段內(nèi)存空間也不能太大,不然會(huì)造成空間浪費(fèi);

第二點(diǎn):每執(zhí)行一條指令必定帶來至少一次訪存,甚至更多,每次訪存都要去維護(hù)這個(gè)時(shí)間開銷無疑是很大的(CLOCK算法也要去維護(hù)一個(gè)bit,但是開銷卻小得多,原因后面再討論),因?yàn)槭褂脭?shù)組記錄則需要線性的時(shí)間來維護(hù),使用heap記錄則需要對(duì)數(shù)時(shí)間來維護(hù),而訪存則是十分頻繁的,這個(gè)代價(jià)是不能接受的;值得一提的是雖然看起來heap開銷小一些,但是數(shù)據(jù)量很大的話heap相對(duì)無序array來說對(duì)緩存不友好,這也是一個(gè)問題,不過我不知道是否可以忽略;

第三點(diǎn):選擇出最久未使用的頁面的開銷也很大,使用無序array記錄則需要線性的時(shí)間來查找,使用heap記錄則需要對(duì)數(shù)時(shí)間來查找;

綜合上述三點(diǎn)可知LRU具體實(shí)現(xiàn)起來確實(shí)很困難開銷也很大。那么CLOCK算法和LRU相比優(yōu)勢(shì)在哪里?

未改進(jìn)CLOCK算法需要維護(hù)一個(gè)bit,用來標(biāo)志該頁面是否被使用過;很自然地想到同樣需要三點(diǎn),即存儲(chǔ),維護(hù)和查找,但是前兩點(diǎn)(存儲(chǔ)和維護(hù))的實(shí)現(xiàn)和開銷相對(duì)LRU則簡(jiǎn)單很多。

延伸閱讀:

二、全局頁面置換算法

工作集模型工作集頁置換算法缺頁率置換算法

功能:

當(dāng)缺頁中斷發(fā)生,需要調(diào)入新的頁面而內(nèi)存已滿時(shí),選擇內(nèi)存當(dāng)中哪個(gè)物理頁面被置換。

目標(biāo):

盡可能地減少頁面的換進(jìn)換出次數(shù)(既缺頁中斷的次數(shù))。具體來說,把未來不再使用的或短期內(nèi)較少使用的頁面換出,通常只能在局部性原理指導(dǎo)下依據(jù)過去的統(tǒng)計(jì)數(shù)據(jù)來進(jìn)行預(yù)測(cè)。

頁面鎖定(frame locking):

用于描述必須常駐內(nèi)存的操作系統(tǒng)的關(guān)鍵部分或時(shí)間關(guān)鍵(time-critical)的應(yīng)用程序。實(shí)現(xiàn)的方法是L在頁表中添加鎖定標(biāo)志位(lock bit)。使其不在頁面置換算法范圍之內(nèi),也就說不會(huì)被換入換出。

通常只需要考慮頁號(hào),因?yàn)槠铺?hào)一般不起作用。只保留頁號(hào)。基于這個(gè)list來設(shè)計(jì)各種的頁面替換算法。
通過模擬一個(gè)頁面置換的行為并且記錄產(chǎn)生頁缺失數(shù)的數(shù)量。一般情況下,產(chǎn)生的缺頁次數(shù)越少,性能就越高。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
Layer2是什么和Layer1有哪些區(qū)別?

一、Layer2是什么和Layer1的區(qū)別所謂Layer1和Layer2也就是名列前茅層和第二層。其中第0層對(duì)應(yīng)OSI模型的底層協(xié)議。Layer2是什么和Layer1的區(qū)別是...詳情>>

2023-10-11 07:12:58
數(shù)據(jù)結(jié)構(gòu)中KMP算法是什么?

一、數(shù)據(jù)結(jié)構(gòu)中KMP算法KMP算法介紹KMP算法是一種改進(jìn)的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt提出的,因此人們稱它為克努特—莫...詳情>>

2023-10-11 07:11:44
計(jì)算機(jī)網(wǎng)絡(luò)管理軟件有哪些好用?

1、Nagios CoreNagios Core在全球范圍內(nèi)用于幫助監(jiān)控網(wǎng)絡(luò)和跟蹤各種基礎(chǔ)設(shè)施。它的主動(dòng)監(jiān)控功能可以檢測(cè)它負(fù)責(zé)監(jiān)控的服務(wù)器上的網(wǎng)絡(luò)設(shè)備、服務(wù)...詳情>>

2023-10-11 06:33:55
oa系統(tǒng)怎么注冊(cè)?

一、選擇合適的OA系統(tǒng)首先,需要選擇一款適合自己公司的OA系統(tǒng)。市面上有很多OA系統(tǒng),如用友、金蝶等,不同的OA系統(tǒng)有不同的功能和價(jià)格。在選擇...詳情>>

2023-10-11 06:32:35
大整數(shù)類型和一般的整數(shù)類型相比各有什么優(yōu)劣?

一、大整數(shù)類型和一般的整數(shù)類型相比大整數(shù)類型和一般的整數(shù)類型相比優(yōu)點(diǎn)是不會(huì)溢出,能表示任意長(zhǎng)度的數(shù)字做各種精度的運(yùn)算。缺點(diǎn)是沒有直接的...詳情>>

2023-10-11 06:22:59