久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

操作系統 七次實驗報告 常用頁面置換算法模擬實驗

2020-10-09 00:40:02下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了這篇《操作系統 七次實驗報告 常用頁面置換算法模擬實驗》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《操作系統 七次實驗報告 常用頁面置換算法模擬實驗》。

操作系統課程第七次實驗報告

姓名

學號

計算機

任課教師

指導教師

評閱教師

實驗地點

綜合樓B102

實驗時間

2012-9-26

實驗課表現

出勤和個人表現Q1(15+15(組長評分)=30分)

得分:

實驗

總分

(Q1+Q2+Q3+Q4)

實驗完成情況Q2(45分(組長與教師評分的加權平均))

得分:

實驗編號與實驗名稱:

實驗七、常用頁面置換算法模擬實驗

實驗目的:

通過模擬實現請求頁式存儲管理的幾種基本頁面置換算法,了解虛擬存儲技術的特點,掌握虛擬存儲請求頁式存儲管理中幾種基本頁面置換算法的基本思想和實現過程,并比較它們的效率。

實驗內容及要求(詳見實驗講義與實驗指導書):

要求:

1)要求用你熟悉的程序設計語言編寫和調試一個頁面置換模擬程序;要求在主函數中測試。

2)實驗報告中必須包括:設計思想、數據定義(包括詳細說明)、處理流程(詳細算法描述和算法流程圖)、源代碼、運行結果、體會等部分。

3)必須模擬本實驗內容中提到的算法中的至少2種頁面置換算法。

4)

比較不同頁面置換算法的效率

內容:編寫一個程序,使用以下頁面置換算法中的某2種分別模擬一個分頁系統,并統計同一個頁面訪問序列情況下不同頁面置換算法引發的缺頁中斷次數。

1、第二次機會算法(Second

Chance)

2、最近最少使用算法(Least

Recently

Used,LRU)

3、最不常用算法(Not

Frequently

Used,NFU)

4、最近未使用算法(Not

Recently

Used,NRU)

5、時鐘頁面置換算法

6、老化算法(aging)

頁框的數量固定為4,虛擬頁面數為8。實驗輸入為訪問頁面序列,比如0,1,3,2,7,1

實驗用到的軟件(:)

DevC++,Visio

實驗內容及關鍵步驟(代碼)Q3(15分)

得分:

流程圖:輸入頁面訪問序列

取訪問的頁號

查頁表

是否缺頁?

置缺頁標志flag為’*’

按算法不同淘汰一頁面

調入所訪問的頁面

FIFO算法流程圖

LRU算法流程圖:

函數關系解釋圖:

實現結果:

圖1

圖2

代碼:

#include

#include

#define

MEMORY_SIZE

/*物理塊數*/

#define

PROESS_SIZE

/*頁面號引用串個數*/#include

#include

/*全局變量*/

int

mSIZE=4;

int

pSIZE=8;

static

int

memery[4]={0};

/*物理塊中的頁號*/

static

int

page[8]={0};

/*頁面號引用串*/

static

int

temp[8][4]={0};

/*輔助數組*/

/*置換算法函數*/

void

FIFO();

void

LRU();

void

OPT();

void

designBy();

/*輔助函數*/

void

print(unsigned

int

t);

/*主函數*/

int

main()

{

int

i,k,code;

designBy();

system(“color

0A“);

puts(“請依次輸入頁面號(8個):“);

for(i=0;i

scanf(“%1d“,&page[i]);

system(“cls“);

system(“color

0E“);

do{

puts(“輸入的頁面號引用串為:“);

for(k=0;k<=(pSIZE-1)/20;k++)

{

for(i=20*k;(i

{

if(((i+1)%20==0)||(((i+1)%20)&&(i==pSIZE-1)))

printf(“%d\n“,page[i]);

else

printf(“%d

“,page[i]);

}

}

printf(“*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*\n“);

printf(“*

請選擇頁面置換算法:\t\t\t

*\n“);

printf(“*

-----------------------------------------

*\n“);

printf(“*

1.先進先出(FIFO)

2.最近最久未使用(LRU)

*\n“);

printf(“*

3.退出

*\n“);

printf(“*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*\n“);

printf(“請選擇操作:[

]\b\b“);

scanf(“%d“,&code);

switch(code)

{

case

1:

FIFO();

break;

case

2:

LRU();

break;

case

3:

system(“cls“);

system(“color

0A“);

exit(0);

default:

printf(“輸入錯誤,請重新輸入:“);

}

printf(“按任意鍵重新選擇置換算法:>>>“);

getch();

system(“cls“);

}while

(code!=3);

getch();

}

void

print(unsigned

int

t)

{

int

i,j,k,l;

int

flag;

for(k=0;k<=(pSIZE-1)/20;k++)

{

for(i=20*k;(i

{

if(((i+1)%20==0)||(((i+1)%20)&&(i==pSIZE-1)))

printf(“%d\n“,page[i]);

else

printf(“%d

“,page[i]);

}

for(j=0;j

{

for(i=20*k;(i{

if(i>=j)

printf(“

|%d|“,temp[i][j]);

else

printf(“

|

|“);

}

for(i=mSIZE+20*k;(i

{

for(flag=0,l=0;l

if(temp[i][l]==temp[i-1][l])

flag++;

if(flag==mSIZE)/*頁面在物理塊中*/

printf(“

“);

else

printf(“

|%d|“,temp[i][j]);

}

/*每行顯示20個*/

if(i%20==0)

continue;

printf(“\n“);

}

}

printf(“----------------------------------------\n“);

printf(“缺頁次數:%d\t\t“,t+mSIZE);

printf(“缺頁率:%d/%d\n“,t+mSIZE,pSIZE);

printf(“置換次數:%d\t\t“,t);

printf(“訪問命中率:%d%%\n“,(pSIZE-(t+mSIZE))*100/pSIZE);

printf(“----------------------------------------\n“);

}

/*先進先出頁面置換算法*/

void

FIFO()

{

int

memery[10]={0};

int

time[10]={0};

/*記錄進入物理塊的時間*/

int

i,j,k,m;

int

max=0;

/*記錄換出頁*/

int

count=0;

/*記錄置換次數*/

/*前mSIZE個數直接放入*/

for(i=0;i

{

memery[i]=page[i];

time[i]=i;

for(j=0;j

temp[i][j]=memery[j];

}

for(i=mSIZE;i

{

/*判斷新頁面號是否在物理塊中*/

for(j=0,k=0;j

{

if(memery[j]!=page[i])

k++;

}

if(k==mSIZE)

/*如果不在物理塊中*/

{

count++;

/*計算換出頁*/

max=time[0]

for(m=2;m

if(time[m]

max=m;

memery[max]=page[i];

time[max]=i;

/*記錄該頁進入物理塊的時間*/

for(j=0;j

temp[i][j]=memery[j];

}

else

{

for(j=0;j

temp[i][j]=memery[j];

}

}

print(count);

}

/*最近最久未使用置換算法*/

void

LRU()

{

int

memery[10]={0};

int

flag[10]={0};

/*記錄頁面的訪問時間*/

int

i,j,k,m;

int

max=0;

/*記錄換出頁*/

int

count=0;

/*記錄置換次數*/

/*前mSIZE個數直接放入*/

for(i=0;i

{

memery[i]=page[i];

flag[i]=i;

for(j=0;j

temp[i][j]=memery[j];

}

for(i=mSIZE;i

{

/*判斷新頁面號是否在物理塊中*/

for(j=0,k=0;j

{

if(memery[j]!=page[i])

k++;

else

flag[j]=i;

/*刷新該頁的訪問時間*/

}

if(k==mSIZE)

/*如果不在物理塊中*/

{

count++;

/*計算換出頁*/

max=flag[0]

for(m=2;m

if(flag[m]

max=m;

memery[max]=page[i];

flag[max]=i;

/*記錄該頁的訪問時間*/

for(j=0;j

temp[i][j]=memery[j];

}

else

{

for(j=0;j

temp[i][j]=memery[j];

}

}

//

compute();

print(count);

}

/*顯示設計者信息*/

void

designBy()

{

printf(“┏━━━━━━━━━━━━━━━━━━━━━━━━━┓\n“);

printf(“┃㊣

實驗七:頁面置換算法

㊣┃\n“);

printf(“┃

學號:1001010042

┃\n“);

printf(“┃

姓名:黃浩全

4.9.9.0>┃\n“);

printf(“┣━━━━━━━━━━━━━━━━━━━━━━━━━┫\n“);

}

實驗過程中遇到的問題解決辦法與實驗體會Q4(需手寫,10分)

得分:

1、在FIFO算法可以很容易用數組實現,而LRU算法可以用數組實現,不過用結構體會更明顯簡單。結構體成員變量可以記錄頁號進入的時間,和最近使用的記錄。相對比數組更容易理解和實現。

2:首先,FIFO(先進先出)算法和LRU(最近未使用算法)兩者之間,FIFO算法明顯會比LRU容易理解,而且比LRU算法較容易實現,但在性能方面,LRU的確在優化方面做的比較理想。再且在考慮頁框和頁表號之間的問題用代碼可以容易模擬,但是真是在物理內存塊中是如何實現,那確實是很難以理解,需要真正理解到內存內部的知識才知道這兩個算法是怎么實現的。

評閱教師特殊評語:

評閱教師:

期:

下載操作系統 七次實驗報告 常用頁面置換算法模擬實驗word格式文檔
下載操作系統 七次實驗報告 常用頁面置換算法模擬實驗.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    計算機操作系統實驗三頁面置換算法模擬實驗

    計算機工程學院實驗報告書課程名:《操作系統原理A》題目:虛擬存儲器管理頁面置換算法模擬實驗班級:學號:姓名:評語:成績:指導教師:批閱時間:年月日一、實驗目的與要求1.目的:請求頁式......

    頁面置換算法實驗報告(精選)

    《操作系統--頁面置換算法》 實驗報告 姓名: 范學升學號:1001050903 班級:電科10-1班專業:電子信息科學與技術 一、實驗目的 1.通過模擬實現幾種基本頁面置換的算法,了解虛擬存儲......

    頁面置換算法實驗報告(五篇模版)

    計算機體系結構 實驗報告 班級:計科姓名:張華敏學號:0902班0909090814 FIFU算法 一, 實驗內容: 編寫一段程序來模擬頁面置換算法中的FIFU算法的實現 二, 算法設計: 設置一個產生......

    頁面置換算法模擬實驗 操作系統大作業(含源文件)(合集五篇)

    “計算機操作系統”課程設計大作業 頁面置換算法模擬實驗 (含完整資料,可直接提交) 一、題目: 頁面置換算法模擬實驗 二、目的 分別采用最佳(Optimal)置換算法、先進先出(FI......

    計算機操作系統實驗4頁面置換算法

    實驗4 頁面置換算法(2學時) 一、實驗目的 通過實驗加強對虛擬存儲管理中頁面置換算法的理解和掌握。 二、實驗內容 編寫程序實現虛擬存儲管理中OPT,FIFO,LRU頁面置換算法。 三......

    頁面置換算法模擬

    “計算機操作系統”課程設計大作業 一、題目: 頁面置換算法模擬實驗 二、目的 分別采用最佳(Optimal)置換算法、先進先出(FIFO)頁面置換算法和最近最少使用(LRU)置換算法對......

    頁面替換算法實驗報告

    操作系統頁面替換算法實驗報告 姓名: 沈慧 班級: 計091 學號: 0913022006 頁面替換算法 一.目的和要求 (一)目的 存儲管理的主要功能之一是合理地分配空間。請求頁式管理是一種常......

    實驗5 頁面置換算法

    實驗5 頁面置換算法 一、實驗題目:頁面置換算法(請求分頁) 二、實驗目的: 進一步理解父子進程之間的關系。 1) 理解內存頁面調度的機理。 2) 掌握頁面置換算法的實現方法。 3) 通......

主站蜘蛛池模板: 九九久久精品无码专区| 日本免费一区二区三区最新| 国产手机在线精品| 欧美怡红院免费全部视频| 2018天天躁夜夜躁狠狠躁| 国产精品亚洲а∨天堂123| 无码人妻久久一区二区三区免费| 欧美成年黄网站色视频| 特大巨黑吊xxxx高潮| 国产在线乱子伦一区二区| аⅴ资源天堂资源库在线| 国产剧情福利av一区二区| 国产96在线 | 欧美| 国产精品麻豆欧美日韩ww| 亚洲丁香五月天缴情综合| 激情中文小说区图片区| 久久久久久av无码免费网站下载| 国产精品亚洲玖玖玖在线观看| 日韩一区二区三区无码免费视频| 免费极品av一视觉盛宴| 大香伊蕉在人线国产网站首页| 国产精品一区二区香蕉| 亚洲精品一区久久久久| 又嫩又硬又黄又爽的视频| 欧美成人一区二区三区| 国产精品视频色尤物yw| 欧洲性开放大片免费无码| 国产成人av综合久久| 成人国产欧美大片一区| 永久黄网站色视频免费看| 久久视频在线观看精品| 国产偷人妻精品一区二区在线| 内射干少妇亚洲69xxx| 国产成人精品视频国产| 又爽又黄无遮挡高潮视频网站| 无码人妻斩一区二区三区| 亚洲综合久久成人a片| 无码国内精品久久综合88| 小蜜被两老头吸奶头在线观看| 日本中文字幕一区二区高清在线| 中国老熟妇自拍hd发布|