1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          頁面置換算法(什么是頁面置換算法)

          來源:互聯網轉載 時間:2024-04-30 16:04:00

          頁面置換算法:本質是為了讓有限內存能滿足無線進程。

          先說明一下處理缺頁錯誤的過程:

          分頁硬件在通過頁表轉換地址時會注意到無效位被設置,從而陷入操作系統,這種陷阱是因為操作系統未能將所需要的頁面調入內存引起的。

          處理缺頁錯誤:

          1、檢查這個進程的內部表,確定該引用是否為有效的內存訪問(可以理解為這個內存能被當前進程使用),如果無效那么直接終止進程;如果有效但是尚未調入頁面,就將該頁面調入內存。

          2、然后從空閑幀鏈表上找到一個空閑幀。

          3、調度磁盤將進程所需要的內存讀入頁幀中,

          4、磁盤讀取完成,修改頁表,使空閑幀對應到該頁號上。并且修改頁表有效-無效位 為有效。

          注意頁表中的一些標志位:

          修改位:如果有效為位1,表明被修改,那么替換頁面時需要將內存寫入磁盤中;如果為0,表明未被修改,那么使用頁面替換算法直接釋放

          保護位:可以標記為只讀,寫。

          有效-無效位:i:表示邏輯頁號不對應物理頁幀,為V表示有對應的物理頁幀

          頁面替換算法:

          FIFO:算法

          操作系統總時替換出在內存中停留時間最久的頁面,可以用一個指針來指向這個位置(開銷很小,可以使用一個隊列來實現,每次缺頁時移出末尾的頁面,再隊列頭添加新的頁面,未發生缺頁錯誤就不需要對隊列進行操作)

          LRU算法:操作系統總時替換在內存中最久沒有使用的頁面:我么可以使用鏈表來實現這個算法,表頭表示的是最近被使用的頁面,表尾表示最久沒被使用的頁面,每一次不管是否發生缺頁,都需要對這個鏈表進行從新增刪改查,來保證每一次的鏈表都是我們需要的(開銷太大)

          近似LRU算法:我們在頁表中添加一個引用位clock,當clock為1時,不能移出,當clock為0時,表明可以移除

          procedure t: {  指針p:指向當前的頁面  p = 0;//指向初始位置  boolean :標志位clock  進程包含的所有頁面組成的循環鏈表:linklist//當進程在運行時,鏈表存在,進程結束時,鏈表也消失  while(進程運行){        if(p.clock == 1){      p.clock = 0;      p++;//指針指向下一個    }    if(p.clock == 0){      刪除p指向的頁面并且在p處添加新的頁面;      p.clock = 1;      p++;    }  }}

          近似LRU增強算法:將修改位和引用位合起來作為是否替換條件:當(修改位,引用位) = (0,0)時表明可以替換

          procedure t: {  指針p:指向當前的頁面  p = 0;//指向初始位置  boolean :標志位clock  boolean : 修改位m  進程包含的所有頁面組成的循環鏈表:linklist//當進程在運行時,鏈表存在,進程結束時,鏈表也消失  while(進程運行){          if(p.(clock,m) == (0,0)){            刪除p指向的頁面并且在p處添加新的頁面;      p.(clock,m) = (1,0);      p++;    }    if(p.(clock,m) == (0,1)){                  p.(clock,m) = (0,0);      p++;    }    if(p.(clock,m) == (1,0)){                  p.(clock,m) = (0,0);      p++;    }    if(p.(clock,m) == (1,1)){            p.(clock,m) = (0,1);      p++;    }    if(修改頁面){      p.(clock,m) = (1,1);      p++    }    if(讀頁面){      p.(clock,m) = (1,0);      p++;    }  }}

          頁面緩沖算法:操作做系統保留一個空閑幀池。

          當發生缺頁錯誤時,所需要的頁面就讀取空閑幀,并且將替換的犧牲幀放入緩沖池,在調頁空閑時期將緩沖池中的犧牲幀中的內容寫入(如果頁表上的修改位為1)磁盤中(減少了操作系統的調頁時直接訪問磁盤的過程,提高了調頁效率).

          第二種方法:將犧牲幀中的內容寫入磁盤,但是不釋放幀中的內容,因為進程有可能調用之前的頁,這樣就將緩沖池中的幀直接寫入內存,減少了(從磁盤讀取數據的操作)。

          以上均為局部頁面置換算法,都是在單個進程內部進行的頁面替換操作,但是操作系統在運行過程中不同的進程可以并行并發執行,這樣對頁面的替換就不會僅僅局限于單個進程中

          下面我們學習全局置換算法:我們規定一個工作集和一個常駐集。工作集表明當前程序需要訪問的Δ個頁面,常駐集表明操作系統正在使用的頁面。

          工作集:WS(Δ,t) = {}  工作集不斷移動,操作系統替換出不在工作集中的頁面

          動態工作集頁面替換算法:如下圖,我們規定一個閾值windows size = 2,我們使用兩次缺頁中斷的差值(表明兩次中斷之間有多少次沒有中斷)和閾值比較,如果比閾值大,那么將不再當前工作集的頁面換出,并且重置工作集的大小,如果比閾值小,那么將缺的頁換入工作集并且重置工作集的大小。

          以上就是關于什么是頁面置換算法的內容,如果你們有學習到知識或者技能,可以把它分享出去讓更多的人看到。

          標簽:頁面置換算法-

          c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...

          2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...

          :喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...

          什么是證券的交易手續費交易手續費一般指證券 ,的交易手續費即證券公司在證券交易所交易成交后,按照成交實際金額的一定比例支付給證券交易所的交易費用。證券的交易成本一般包括印花稅和傭金。印花稅是指根據國家稅法規定,買賣雙方在股票成交后要繳納一定比例的稅款,印花稅一般由證券營業機構扣除。傭金是指在證券交易完成后,投資者支付給證券公司的一定比例的費用。 傭金一般由證券公司,經紀傭金、證券交易所手續費和管理...

          眾所周知,住房公積金貸款是非常劃算的,因為住房公積金貸款利率很低,但是仍然有不少人不喜歡欠銀行錢當房奴的感覺,一旦手中有了閑余的資金,就想要提前償還住房貸款,那么公積金可以提前還款嗎?怎樣用公積金還房貸?住房公積金貸款也是可以提前還款的,房貸用戶可以選擇提前部分還款,也可以選擇提前一次性全部結清;如果選擇提前部分還款,那么剩余未還款部分本金繼續按照原貸款合同計算利息,借款人選擇提前一次性全部結清,...

          (資料圖)在生活中,很多人都不知道電腦版qq音樂怎么聽歌識曲是什么意思,其實他的意思是非常簡單的,下面就是小編搜索到的電腦版qq音樂怎么聽歌識曲相關的一些知識,我們一起來學習下吧!有時候我們在使用電腦版qq音樂的時候,想聽歌識曲,怎么操作呢,下面來分享一下方法第一步在我們的電腦上打開音樂,進去主界面之后,點擊上方的聽歌識曲圖標。第二步進去聽歌識曲界面之后,可以識別外面唱的歌曲也可以識別正在播放的歌...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>