自動化1203張千偉201203870323
1、實驗目的
1.熟悉分頁式儲存管理
2.掌握最久未使用演算法以及fifo演算法
2、實驗內容
1.實驗**
#include<>
#include<>
#include<>
#include<>
#define bsize 4 //物理塊大小
#define psize 16 //程序大小
typedef struct page
page頁面邏輯結構,結構為方便演算法實現設計*/
page b[bsize記憶體單元數*/
int c[bsize][psize]; /*暫儲存記憶體當前的狀態:緩衝區*/
int queue[100記錄調入佇列*/
int k調入佇列計數變數*/
int phb[bsize]=; //物理塊標號
int pro[psize]=; //程序序列號
int flag[bsize] = ; //程序等待次數(存放最久未被使用的程序標誌)
int i = 0, j = 0,k = 0; //i表示程序序列號,j表示物理塊號
int m = -1, n = -1物理塊空閒和程序是否相同判斷標誌
int max = -1,maxflag = 0; //標記替換物理塊程序下標
int count = 0統計頁面缺頁次數
隨機產生序列號函式
int* build()
printf("\n");
return(pro);
}//查詢空閒物理塊
int searchpb()
return -1;
}int searchpro()//查詢相同程序
}return -1;
}void empty()//初始化記憶體
void fifo()//先進先出頁面置換演算法
else存在相同的程序
for(j = 0 ;j < bsize; j++)
printf("\n");
}printf("缺頁次數為:%d\n",count);
printf("\n");
}void init(page *b,int c[bsize][psize]) /*初始化記憶體單元、緩衝區*/
for(i=0;ifor(j=0;jc[i][j]=-1;
} int getmax(page *b) /*取得在記憶體中停留最久的頁面,預設狀態下為最早調入的頁面*/
return tag;
}int equation(int fold,page *b) /*判斷頁面是否已在記憶體中*/
return -1;
} /*lru核心部分*/
void lruu(int fold,page *b)
else
}void lru()
{ int i,j;
k=-1;
init(b, c);
for(i=0;i {
lruu(pro[i],b);
c[0][i]=pro[i];
記錄當前的記憶體單元中的頁面*/
for(j=0;j 1.某系統採用頁式儲存管理策略,擁有邏輯空間32頁,每頁2k,擁有物理空間1m。1 寫出邏輯位址的格式。因為擁有邏輯空間32頁,所以頁號需要5位,每頁2k,所以頁內位址需要11位,所以邏輯位址的格式如下 2 若不考慮訪問許可權等,程序的頁表有多少項?每項至少有多少位?每個程序最多32個頁面,因此程序... 電腦科學與技術學院 2007 2008 學年第一學期 作業系統 課程設計 題目 模擬段頁式儲存管理位址變換 教師馮霞 班級050341d班 學號050341404 姓名陳玉虎 成績1.題目分析 1.1 設計目的 了解記憶體管理機制,掌握段頁式虛擬儲存技術 理解記憶體分配原理,特別是以頁面為單位的虛擬... 分式 知識要點 1.分式 整式a除以整式b,可以表示成的形式,如果除式b中含有那麼稱為分式 若 則有意義 若 則無意義 若則 0.2 分式的基本性質 分式的分子與分母都乘以 或除以 同乙個不等於零的整式,分式的用式子表示為 3.約分 把乙個分式的分子和分母的約去,這種變形稱為分式的約分 4 通分 根...第四章 分頁式儲存管理方式
模擬段頁式儲存管理位址變換
專題四分式與分式方程