国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 常見問題 頁面置換算法是什么

頁面置換算法是什么

Jun 15, 2019 pm 02:22 PM

在地址映射過程中,若在頁面中發(fā)現(xiàn)所要訪問的頁面不在內(nèi)存中,則產(chǎn)生缺頁中斷。當發(fā)生缺頁中斷時,如果操作系統(tǒng)內(nèi)存中沒有空閑頁面,則操作系統(tǒng)必須在內(nèi)存選擇一個頁面將其移出內(nèi)存,以便為即將調(diào)入的頁面讓出空間。而用來選擇淘汰哪一頁的規(guī)則叫做頁面置換算法。?

頁面置換算法是什么

常見的置換算法

最佳置換算法(OPT)

這是一種理想情況下的頁面置換算法,但實際上是不可能實現(xiàn)的。該算法的基本思想是:發(fā)生缺頁時,有些頁面在內(nèi)存中,其中有一頁將很快被訪問(也包含緊接著的下一條指令的那頁),而其他頁面則可能要到10、100或者1000條指令后才會被訪問,每個頁面都可 [1]? 以用在該頁面首次被訪問前所要執(zhí)行的指令數(shù)進行標記。最佳頁面置換算法只是簡單地規(guī)定:標記最大的頁應該被置換。這個算法唯一的一個問題就是它無法實現(xiàn)。當缺頁發(fā)生時,操作系統(tǒng)無法知道各個頁面下一次是在什么時候被訪問。雖然這個算法不可能實現(xiàn),但是最佳頁面置換算法可以用于對可實現(xiàn)算法的性能進行衡量比較。?

先進先出置換算法(FIFO)

最簡單的頁面置換算法是先入先出(FIFO)法。這種算法的實質(zhì)是,總是選擇在主存中停留時間最長(即最老)的一頁置換,即先進入內(nèi)存的頁,先退出內(nèi)存。理由是:最早調(diào)入內(nèi)存的頁,其不再被使用的可能性比剛調(diào)入內(nèi)存的可能性大。建立一個FIFO隊列,收容所有在內(nèi)存中的頁。被置換頁面總是在隊列頭上進行。當一個頁面被放入內(nèi)存時,就把它插在隊尾上。?

這種算法只是在按線性順序訪問地址空間 [1]? 時才是理想的,否則效率不高。因為那些常被訪問的頁,往往在主存中也停留得最久,結果它們因變“老”而不得不被置換出去。

FIFO的另一個缺點是,它有一種異?,F(xiàn)象,即在增加存儲塊的情況下,反而使缺頁中斷率增加了。當然,導致這種異?,F(xiàn)象的頁面走向?qū)嶋H上是很少見的。

最近最久未使用(LRU)算法

FIFO算法和OPT算法之間的主要差別是,F(xiàn)IFO算法利用頁面進入內(nèi)存后的時間長短作為置換依據(jù),而OPT算法的依據(jù)是將來使用頁面的時間。如果以最近的過去作為不久將來的近似,那么就可以把過去最長一段時間里不曾被使用的頁面置換掉。它的實質(zhì)是,當需要置換一頁時,選擇在之前一段時間里最久沒有使用過的頁面予以置換。這種算法就稱為最久未使用算法(Least Recently Used,LRU)。?

LRU算法是與每個頁面最后使用的時間有關的。當必須置換一個頁面時,LRU算法選擇過去一段時間里最久未被使用的頁面。

LRU算法是經(jīng)常采用的頁面置換算法,并被認為是相當好的,但是存在如何實現(xiàn)它的問題。

LRU算法需要實際硬件的支持。

其問題是怎么確定最后使用時間的順序,對此有兩種可行的辦法:?

1.計數(shù)器。

最簡單的情況是使每個頁表項對應一個使用時間字段,并給CPU增加一個邏輯時鐘或計數(shù)器。每次存儲訪問,該時鐘都加1。每當訪問一個頁面時,時鐘寄存器的內(nèi)容就被復制到相應頁表項的使用時間字段中。這樣我們就可以始終保留著每個頁面最后訪問的“時間”。在置換頁面時,選擇該時間值最小的頁面。這樣做, 不僅要查頁表,而且當頁表改變時(因CPU調(diào)度)要維護這個頁表中的時間,還要考慮到時鐘值溢出的問題。

2.棧。

用一個棧保留頁號。每當訪問一個頁面時,就把它從棧中取出放在棧頂上。這樣一來,棧頂總是放有目前使用最多的頁,而棧底放著目前最少使用的頁。由于要從棧的中間移走一項,所以要用具有頭尾指針的雙向鏈連起來。在最壞的情況下,移走一頁并把它放在棧頂上需要改動6個指針。每次修改都要有開銷,但需要置換哪個頁面卻可直接得到,用不著查找,因為尾指針指向棧底,其中有被置換頁。?

因?qū)崿F(xiàn)LRU算法必須有大量硬件支持,還需要一定的軟件開銷。所以實際實現(xiàn)的都是一種簡單有效的LRU近似算法。?

一種LRU近似算法是最近未使用算法(Not Recently Used,NUR)。

它在存儲分塊表的每一表項中增加一個引用位,操作系統(tǒng)定期地將它們置為0。當某一頁被訪問時,由硬件將該位置1。過一段時間后,通過檢查這些位可以確定哪些頁使用過,哪些頁自上次置0后還未使用過。就可把該位是0的頁淘汰出去,因為在之前最近一段時間里它未被訪問過。?

4)Clock置換算法(LRU算法的近似實現(xiàn))?

5)最少使用(LFU)置換算法

在采用最少使用置換算法時,應為在內(nèi)存中的每個頁面設置一個移位寄存器,用來記錄該頁面被訪問的頻率。該置換算法選擇在之前時期使用最少的頁面作為淘汰頁。

由于存儲器具有較高的訪問速度,例如100 ns,在1 ms時間內(nèi)可能對某頁面連續(xù)訪問成千上萬次,因此,通常不能直接利用計數(shù)器來記錄某頁被訪問的次數(shù),而是采用移位寄存器方式。每次訪問某頁時,便將該移位寄存器的最高位置1,再每隔一定時間(例如100 ns)右移一次。這樣,在最近一段時間使用最少的頁面將是∑Ri最小的頁。

LFU置換算法的頁面訪問圖與LRU置換算法的訪問圖完全相同;或者說,利用這樣一套硬件既可實現(xiàn)LRU算法,又可實現(xiàn)LFU算法。應該指出,LFU算法并不能真正反映出頁面的使用情況,因為在每一時間間隔內(nèi),只是用寄存器的一位來記錄頁的使用情況,因此,訪問一次和訪問10 000次是等效的。

6)工作集算法

7)工作集時鐘算法

8)老化算法(非常類似LRU的有效算法)

9)NRU(最近未使用)算法

10)第二次機會算法

第二次機會算法的基本思想是與FIFO相同的,但是有所改進,避免把經(jīng)常使用的頁面置換出去。當選擇置換頁面時,檢查它的訪問位。如果是0,就淘汰這頁;如果訪問位是1,就給它第二次機會,并選擇下一個FIFO頁面。當一個頁面得到第二次機會時,它的訪問位就清為0,它的到達時間就置為當前時間。如果該頁在此期間被訪問過,則訪問位置1。這樣給了第二次機會的頁面將不被淘汰,直至所有其他頁面被淘汰過(或者也給了第二次機會)。因此,如果一個頁面經(jīng)常使用,它的訪問位總保持為1,它就從來不會被淘汰出去。

第二次機會算法可視為一個環(huán)形隊列。用一個指針指示哪一頁是下面要淘汰的。當需要一個存儲塊時,指針就前進,直至找到訪問位是0的頁。隨著指針的前進,把訪問位就清為0。在最壞的情況下,所有的訪問位都是1,指針要通過整個隊列一周,每個頁都給第二次機會。這時就退化成FIFO算法了。?

以上是頁面置換算法是什么的詳細內(nèi)容。更多信息請關注PHP中文網(wǎng)其他相關文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻,版權歸原作者所有,本站不承擔相應法律責任。如您發(fā)現(xiàn)有涉嫌抄襲侵權的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1600
29
PHP教程
1502
276
如何創(chuàng)建系統(tǒng)還原點 如何創(chuàng)建系統(tǒng)還原點 Jul 07, 2025 am 12:17 AM

系統(tǒng)還原點設置方法包括手動創(chuàng)建、依賴自動創(chuàng)建和管理存儲空間。1.手動創(chuàng)建需在“創(chuàng)建還原點”中啟用系統(tǒng)保護,分配5%磁盤空間并點擊“創(chuàng)建”命名還原點;2.系統(tǒng)會在安裝更新或更改設置時自動創(chuàng)建還原點但不保證全面性;3.還原點默認占用不超過5%的系統(tǒng)盤空間,舊版本會自動清理,可通過調(diào)整上限管理存儲。

如何修復video_tdr_failure(nvlddmkm.sys) 如何修復video_tdr_failure(nvlddmkm.sys) Jul 16, 2025 am 12:08 AM

遇到藍屏錯誤VIDEO_TDR_FAILURE(nvlddmkm.sys)時,應優(yōu)先排查顯卡驅(qū)動或硬件問題。1.更新或回滾顯卡驅(qū)動:通過設備管理器自動搜索更新、使用NVIDIA官網(wǎng)工具手動安裝或回滾至舊版穩(wěn)定驅(qū)動;2.調(diào)整TDR機制:修改注冊表中TdrDelay值以延長系統(tǒng)等待時間;3.檢查顯卡硬件狀態(tài):監(jiān)控溫度、電源供電、接口連接及內(nèi)存條情況;4.排查系統(tǒng)干擾因素:運行sfc/scannow修復系統(tǒng)文件、卸載沖突軟件并嘗試安全模式啟動以確認問題根源。多數(shù)情況下先處理驅(qū)動問題,若反復出現(xiàn)則需深入

什么是防火墻,它如何工作 什么是防火墻,它如何工作 Jul 08, 2025 am 12:11 AM

防火墻是一種網(wǎng)絡安全系統(tǒng),通過預定義規(guī)則監(jiān)控和控制網(wǎng)絡流量,以保護計算機或網(wǎng)絡免受未經(jīng)授權的訪問。其核心功能包括:1.檢查數(shù)據(jù)包的來源、目標地址、端口和協(xié)議;2.根據(jù)信任度判斷是否允許連接;3.阻止可疑或惡意行為;4.支持不同類型如包過濾防火墻、狀態(tài)檢測防火墻、應用層防火墻和下一代防火墻;5.用戶可通過操作系統(tǒng)設置啟用內(nèi)置防火墻,如Windows安全中心或macOS系統(tǒng)偏好設置;6.防火墻應與其他安全措施如強密碼和更新軟件結合使用以增強防護效果。

如何阻止程序連接到互聯(lián)網(wǎng) 如何阻止程序連接到互聯(lián)網(wǎng) Jul 07, 2025 am 12:12 AM

要阻止特定程序聯(lián)網(wǎng)可通過系統(tǒng)防火墻或第三方工具實現(xiàn)。1.Windows用戶可使用自帶防火墻,在“出站規(guī)則”中新建規(guī)則選擇程序路徑并設置“阻止連接”;2.第三方工具如GlassWire或NetBalancer提供圖形界面操作更便捷但需注意來源可靠性和性能影響;3.Mac用戶可通過命令行配合pfctl或使用LittleSnitch等工具控制聯(lián)網(wǎng)權限;4.更徹底的方式是采用斷網(wǎng) 白名單策略默認禁止所有程序聯(lián)網(wǎng)僅允許信任程序訪問。不同系統(tǒng)操作方式雖有差異但核心邏輯一致需注意路徑和規(guī)則生效范圍的細節(jié)。

為什么我每次都會獲得用戶帳戶控制(UAC)提示 為什么我每次都會獲得用戶帳戶控制(UAC)提示 Jul 13, 2025 am 12:12 AM

UAC頻繁彈出是因為運行的程序需要管理員權限或系統(tǒng)設置級別過高。常見原因包括安裝軟件、修改系統(tǒng)設置、運行第三方工具等操作觸發(fā)提示。若使用管理員賬戶,UAC僅確認操作而非阻止。減少提示方法有:取消程序以管理員身份運行、調(diào)低UAC通知級別、使用標準用戶賬戶、通過任務計劃器啟動程序。不建議完全關閉UAC,因其能有效防止惡意程序篡改系統(tǒng),可將UAC設為“僅在程序更改計算機時通知”以平衡安全與體驗。

如何在Facebook上更改您的名字? 如何在Facebook上更改您的名字? Jul 13, 2025 am 12:03 AM

Facebook改名流程簡單但需注意規(guī)則,首先登錄應用或網(wǎng)頁版進入“設置與隱私”>“設置”>“個人信息”>“姓名”,輸入新名字后保存;其次必須使用真實姓名,60天內(nèi)不能頻繁修改,不可含特殊字符或數(shù)字且不得冒充他人,審核不通過可上傳身份證等輔助驗證;提交后通常幾分鐘至3個工作日內(nèi)生效;最后改名不會通知好友,主頁名稱同步更新,舊名字仍顯示在歷史記錄中。

為什么在Windows更新后我的音頻不起作用 為什么在Windows更新后我的音頻不起作用 Jul 09, 2025 am 12:10 AM

音頻問題通常由設置變動、驅(qū)動異?;蛳到y(tǒng)服務故障導致,可按以下步驟排查解決:1.檢查音量是否靜音、輸出設備是否正確,嘗試重新插拔耳機;2.通過設備管理器更新或回滾音頻驅(qū)動,必要時卸載后重啟電腦;3.確認“WindowsAudio”服務已啟動且啟動類型設為自動;4.運行sfc/scannow命令修復可能損壞的系統(tǒng)文件。按照順序逐步操作,多數(shù)情況可恢復音頻功能。

關閉或睡覺我的電腦更好嗎 關閉或睡覺我的電腦更好嗎 Jul 08, 2025 am 12:19 AM

睡眠和關機各有用途,選擇取決于使用場景。1.睡眠適合短暫休息,保持低功耗并快速恢復工作;2.關機適合長時間不使用、安裝更新或排查故障,完全斷電節(jié)省能源;3.混合睡眠兼顧內(nèi)存與硬盤保存,防止斷電丟失數(shù)據(jù);4.筆記本需注意電池健康,避免長期睡眠導致過度放電;5.睡眠模式下可能仍有后臺任務運行,建議根據(jù)需求調(diào)整設置以優(yōu)化性能和能耗。