頁式儲存管理(FIFO演算法)

2021-07-25 14:49:50 字數 1121 閱讀 9581

今天,第一次寫部落格,有點小激動。

這次的題目是頁式儲存管理,要求輸入記憶體頁面數,程序訪問序列個數以及程序的頁號,根據fifo演算法求出淘汰頁號,缺頁頁號,缺頁次數,缺頁率,預設記憶體3個物理塊,且是單程序。本次實驗用到了佇列,將物理塊中頁號,淘汰的頁號,缺頁號壓入佇列,最後列印出來,並根據缺頁佇列長度計算缺頁率。

#include 

#include

using

namespace

std;

int main()

cout

<< endl;

//fifo演算法

int a = process[0];

int b = process[1];

int c = process[2];

pro.push(a);

pro.push(b);

pro.push(c);

//缺頁處理

for (int i = 3; i < num; i++)

}nopagenum = nopage.size()+3; //接下來要返回缺頁佇列隊首元素並刪除,刪除後隊列為空,

//因此要先取出該佇列長度 ,最先訪問3個頁號時,物理塊為空,因此缺頁次數+3

cout

<< "淘汰的頁號依次為:";

while (!th.empty())

cout

<< endl;

cout

<< "缺頁的頁號依次為:"

<< process[0] << " "

<< process[1] << " "

<< process[2] << " ";

while (!nopage.empty())

cout

<< endl;

cout

<< "缺頁次數為:"

<< nopagenum << endl;

cout

<< "缺頁率為:"

頁式儲存管理

作業系統原理 頁式儲存管理 記憶體分割槽儲存管理的乙個特點是連續性,每個程式都分有一片連續的記憶體區域。這種連續性導致碎片問題,包括 固定分割槽中的內碎片和可變分割槽中的外碎片。為了解決這些問題,人們又提出了 頁式儲存管理方案 它的基本出發點 是打破儲存分配的連續性,使乙個程式的邏輯位址空間可以分布...

頁式儲存管理

基本原理 1 等分記憶體 頁式儲存管理將記憶體空間劃分成等長的若干區域,每個區域的大小一般取2的整數冪,稱為乙個物理頁面有時稱為塊。記憶體的所有物理頁面從0開始編號,稱作物理頁號。2 邏輯位址 系統將程式的邏輯空間按照同樣大小也劃分成若干頁面,稱為邏輯頁面也稱為頁。程式的各個邏輯頁面從0開始依次編號...

段頁式儲存管理

段頁式儲存管理技術的基本思想 段頁式儲存管理技術試圖結合分段儲存管理在邏輯上的優點以及分頁儲存管理在物理上的優點,它是採用分段方法來分配和管理使用者的作業位址空間,採用分頁的方法來分配和管理主存 的儲存空間。即把作業分段,段內再分成也,主存分配以頁為單位。在段頁式儲存管理系統中,作業的位址空間被劃分...