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

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質(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)前位置:首頁(yè)  >  技術(shù)干貨  > 操作系統(tǒng)幾種主要的頁(yè)面置換算法分別是用什么數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)的?

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

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

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

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

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

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

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

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

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

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

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

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

        延伸閱讀:

        二、全局頁(yè)面置換算法

        工作集模型工作集頁(yè)置換算法缺頁(yè)率置換算法

        功能:

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

        目標(biāo):

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

        頁(yè)面鎖定(frame locking):

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

        通常只需要考慮頁(yè)號(hào),因?yàn)槠铺?hào)一般不起作用。只保留頁(yè)號(hào)?;谶@個(gè)list來(lái)設(shè)計(jì)各種的頁(yè)面替換算法。
        通過(guò)模擬一個(gè)頁(yè)面置換的行為并且記錄產(chǎn)生頁(yè)缺失數(shù)的數(shù)量。一般情況下,產(chǎn)生的缺頁(yè)次數(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)是沒(méi)有直接的...詳情>>

        2023-10-11 06:22:59
        金乡县| 凤凰县| 班玛县| 蒲城县| 河西区| 兰西县| 云浮市| 汽车| 宾阳县| 绥棱县| 凤城市| 巧家县| 青河县| 哈巴河县| 县级市| 兴宁市| 乃东县| 黄龙县| 万年县| 乌兰浩特市| 西丰县| 东明县| 芷江| 绥中县| 灵寿县| 城口县| 全南县| 旬阳县| 二连浩特市| 林甸县| 汽车| 新沂市| 修武县| 建水县| 江陵县| 忻城县| 屏东市| 永善县| 文化| 江北区| 临城县|