FIFO先進先出頁面置換演算法實現

2021-09-01 21:02:50 字數 891 閱讀 4094

學校要做的實驗,很久沒有寫**了orz,所以寫的很亂。不過可以直接提交到oj平台上。自己寫的**,歡迎討論。

fifo先進先出頁面置換演算法,是最早出現的頁面置換演算法,該演算法總是淘汰最先進入記憶體的頁面。以下是**:

#include #include #include using namespace std;

// fifo 函式宣告

// 輸入引數描述:

// pageframenum:作業系統分配給某程序的頁框數目;

// pagecallsequence:頁面呼叫序列,序列中的每一項是被呼叫頁面的頁面號。

void fifo(int pageframenum, vector&pagecallsequence);

int main()

fifo(pageframenum, pagecallsequence); // 模擬先進先出頁面置換演算法

return 0;

}//3、在 fifo 函式中,實現:每次訪問頁面時,依頁框編號的次序輸出頁框中的頁面編號;計算並輸出缺頁率。

//4、輸入輸出格式見樣例輸入和樣例輸出。在樣例輸出中:除最後一行之外,每一行是依頁框編號的次序輸出頁框中的頁面編號,

//如果尚未載入頁面到頁框,則輸出 - 1;最後一行是缺頁率,保留三位有效數字。

void fifo(int pageframenum, vector&pagecallsequence)

;//初始化陣列並且賦值為-1,最高上限100

for (int i = 0; i < 100; i++)

int arr1[100];//標誌陣列,每改變一次數+1

for(int i=0;i設定了兩個陣列,最大值都是100,所以最多可以設定100個頁面。

2018.11.26

小旻

頁面置換 先進先出置換(FIFO)

先進先出置換 淘汰最先進入記憶體的頁面 輸入 記憶體物理塊的大小,以及頁面號引用串的大小,引用串的各個頁面編號。輸出 被置換出去的頁面編號。執行結果 所需的資料結構 頁面 struct page 輔助函式 在記憶體中尋找最先進入記憶體的頁面。返回記憶體下標。int findfirst page q,...

先進先出(FIFO)頁面置換演算法 C語言實現

假設每個頁面中可存放10條指令,分配給作業的記憶體塊數為4。用c語言模擬乙個作業的執行過程,該作業共有320條指令,即它的位址空間為32頁,目前它的所有頁都還未調入記憶體。在模擬過程中,如果所訪問的指令已在記憶體,則顯示其實體地址,並轉下一條指令。如果所訪問的指令還未裝入記憶體,則發生缺頁,此時需記...

作業系統 頁面置換演算法 先進先出置換演算法

位址對映過程中,若在頁面中發現所要訪問的頁面不再記憶體中,則產生缺頁中斷。當發生 缺頁中斷 時作業系統必須在記憶體選擇乙個頁面將其移出記憶體,以便為即將調入的頁面讓出空間。而用來選擇淘汰哪一頁的規則叫做 頁面置換演算法 最簡單的頁面置換演算法是先入先出 fifo 法。假定系統為某程序分配了三個物理塊...