請求分頁系統中的記憶體分配策略

2021-10-08 09:25:18 字數 723 閱讀 7414

固定分配區域性置換

固定分配:為每個程序分配一組固定數目的物理塊,程序執行期間不再改變。

區域性置換:如果程序在執行期間發現缺頁,則只能從分配給該程序的n個頁面中選出一頁換出,再調如一頁,以保證分配給該程序的記憶體空間不變。

缺點:為每個程序分配多少個物理塊難以確定。太少,會頻繁出現缺頁中斷,降低了系統的吞吐量。太多,必然使記憶體中駐留的程序數目減少,進而可能造成cpu空閒或其他資源空閒。

可變分配全域性變換

可變分配:先為程序分配一定數目的物理塊,在執行期間,可根據情況做適當的增加或減少。

全域性置換:如果程序在執行期間發生缺頁,則將os保留的空閒物理塊取出一塊分配給該程序,或者以所有的程序的全部物理塊為標的,選擇一塊換出,然後將該頁調入。

分配給該程序的記憶體空間會隨之增加

在採用這種策略時,凡是發生缺頁中斷的程序,都將獲得新的物理塊,僅當空閒物理塊佇列中的物理塊用完,os才能從記憶體中選出一頁調出。選出的一頁可能是系統中任何乙個程序中的頁,因此被選中的程序擁有的物理塊數會減少,會導致缺頁率增加

可變分配區域性變數

為每個程序分配一定數目的物理塊,但當某程序發現缺頁時,只允許從該程序在記憶體的頁面選擇一頁換出,這樣就不會影響其他程序的執行。如果程序在執行中發生頻繁的缺頁中斷,則系統再為該程序分配若干附加的物理塊,直至該程序的缺頁率減少到適當程度為止。反之,若乙個程序在執行期間缺頁率特別低,可適當減少為該程序分配的物理塊。

中斷請求 分頁記憶體和非分頁記憶體

以下均為個人見解,如果有錯,希望大家指正,謝謝。最近在學習windows驅動,沒辦法,逃避不了對windows記憶體管理的學習,我向來對此比較感冒,看了好多回始終不得要領,拋磚引玉,希望仁者見仁 智者見智。1 在直接講述分頁與非分頁記憶體的相關知識前,還需要先了解點中斷的知識。irql 中斷請求級別...

作業系統 請求分頁管理(續)

最小物理塊數的確定 物理塊的分配策略 物理塊分配演算法 按比例分配演算法 考慮優先權的分配演算法 何時調入頁面 請求調頁策略 從何處調入頁面 頁面調入過程 在缺頁調入記憶體後,利用修改後的頁表,去形成所要訪問資料的實體地址,再去訪問記憶體資料 請求分頁中的位址變換過程 頁面緩衝演算法 pba pag...

Django非同步請求分頁的實現

django的開發文件有乙個自帶的paginator分頁器,可以很方便的在原生的模板中進行呼叫函式分頁 但是非同步請求不能給模板傳入物件,該怎麼分頁了?1 就將分頁需要用到的資料從物件中提前取出來,放在字典裡面 2 前台呼叫時候不再從物件中取,而是字典中取,完成分頁樣式 views.py 獲取返回列...