資源簡介
模擬分頁式虛擬存儲管理中硬件的地址轉換和缺頁中斷,以及用先進先出(FIFO)頁面調度算法處理缺頁中斷。
用高級語言編寫和調試一個簡單的文件系統,模擬文件管理的工作過程。(題目四)
包含詳細實驗報告·

代碼片段和文件信息
#include?
#include?
#include?
using?namespace?std;
#define?N_z?4//主存塊號
#define?N_p?7//頁數
#define?N_c?4//頁表列數
int?P[N_z];//已裝入內存的頁號
int?Page[N_p][N_c];//頁表
//用戶需輸入數據:操作數、頁號、單元號
char?oper;//操作數
int?page;//頁號
int?unit;//單元號
int?temp;//暫時性變量
int??L;//存放指令中訪問的頁號的全局變量?
void?Init();
void?Display();
void?Input();
void?Check(int?c);
void?Inter(int?m);
void?Comp(int?c);
int?main()
{
Init();
cout<<“-----------------------頁表初始狀態如下------------------“< Display();
do{
Input();
L=page;
Check(L);
}while(temp?==?1);
}
void?Init()//初始化主存塊
{
for(int?i=?0;i P[i]=i;
}
//初始化頁表
for(int?j?=?0;j Page[j][0]?=?j;
if(j else?Page[j][1]?=?0;
}
Page[0][2]?=?5;Page[0][3]=11;//前面不能加0,系統會當成八進制處理
Page[1][2]?=?8;Page[1][3]=12;
Page[2][2]?=?9;Page[2][3]=13;
Page[3][2]?=?1;Page[3][3]=21;
Page[4][2]?=?0;Page[4][3]=22;
Page[5][2]?=?0;Page[5][3]=23;
Page[6][2]?=?0;Page[6][3]=121;
}
void?Display()//顯示頁表
{
cout<<“頁號??“<<“標志??“<<“主存塊號??“<<“在磁盤上的位置??“< for(int?i?=?0;i for(int?j=0;j {
if(j==2&&Page[j][2]==0)
cout<<“\t“;
else?cout< }
cout?< }
}
void?Input()//用戶輸入指令
{
cout<<“請輸入指令:\n?操作???頁號???單元號???“< cin>>oper>>page>>unit;
}
void?Check(int?c)//查頁表
{
if(Page[c][1]==1)
Comp(c);//若頁表標示為1,則調用絕對地址函數
else?Inter(c);
}
void?Comp(int?c)//調用絕對地址
{
int?address?=Page[c][2]*1024+unit;
cout<<“絕對地址:“< cout<<“-----------------指令執行后頁表情況如下------------------“< Display();
cout< cin>>temp;
}
void?Inter(int?m)//缺頁中斷處理
{
cout<<“該頁頁號*?“<
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????2010??2010-11-02?23:54??os3_軟件0802_李旦蘭_20083308\os3_0.1.cpp
?????文件???????3613??2010-11-04?20:13??os3_軟件0802_李旦蘭_20083308\os3_0.2.cpp
?????文件???????9484??2010-11-04?22:25??os3_軟件0802_李旦蘭_20083308\os3_0.3.cpp
?????文件?????337920??2010-11-04?22:23??os3_軟件0802_李旦蘭_20083308\操作系統實驗三(題目一和二)實驗報告_李旦蘭_20083308.doc
?????文件?????642560??2010-11-05?01:43??os3_軟件0802_李旦蘭_20083308\操作系統實驗三(題目四)實驗報告_李旦蘭_20083308.doc
?????目錄??????????0??2010-11-05?01:44??os3_軟件0802_李旦蘭_20083308
-----------?---------??----------?-----??----
???????????????995587????????????????????6
- 上一篇:操作系統實驗——進程的同步與互斥讀者寫者問題
- 下一篇:VRML液晶顯示器
評論
共有 條評論