![实验五:页面调度算法模拟-实验报告(共23页)_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-2/18/46a7568a-1a59-460a-b597-1c7a921f6d96/46a7568a-1a59-460a-b597-1c7a921f6d961.gif)
![实验五:页面调度算法模拟-实验报告(共23页)_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-2/18/46a7568a-1a59-460a-b597-1c7a921f6d96/46a7568a-1a59-460a-b597-1c7a921f6d962.gif)
![实验五:页面调度算法模拟-实验报告(共23页)_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-2/18/46a7568a-1a59-460a-b597-1c7a921f6d96/46a7568a-1a59-460a-b597-1c7a921f6d963.gif)
![实验五:页面调度算法模拟-实验报告(共23页)_第4页](http://file3.renrendoc.com/fileroot_temp3/2022-2/18/46a7568a-1a59-460a-b597-1c7a921f6d96/46a7568a-1a59-460a-b597-1c7a921f6d964.gif)
![实验五:页面调度算法模拟-实验报告(共23页)_第5页](http://file3.renrendoc.com/fileroot_temp3/2022-2/18/46a7568a-1a59-460a-b597-1c7a921f6d96/46a7568a-1a59-460a-b597-1c7a921f6d965.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上计算机操作系统实验报告实验五:页面调度算法模拟学校:院系:班级:姓名:学号:指导教师:目 录实验五:页面调度算法模拟一、实验题目页面调度算法模拟二、实验学时2学时三、指导老师四、实验日期2018年12月10日星期一五、实验目的(1)熟悉操作系统页面调度算法(2)编写程序模拟先进先出、LRU等页面调度算法,体会页面调度算法原理六、实验原理6.1页面的含义分页存储管理将一个进程的逻辑地址空间分成若干大小相等的片,称为页面或页。6.2 页面置换算法的含义在进程运行过程中,若其所要访问的页面不在内存而需把它们调入内存,但内存已无空闲空间时,为了保证该进程能正常运行,系统必须从
2、内存中调出一页程序或数据,送磁盘的对换区中。但应将哪个页面调出,须根据一定的算法来确定。通常,把选择换出页面的算法称为页面置换算法(Page_Replacement Algorithms)。6.3 置换算法一个好的页面置换算法,应具有较低的页面更换频率。从理论上讲,应将那些以后不再会访问的页面换出,或将那些在较长时间内不会再访问的页面调出。6.3.1最佳置换算法(Optimal)它是由Belady于1966年提出的一种理论上的算法。其所选择的被淘汰页面,将是以后永不使用的或许是在最长(未来)时间内不再被访问的页面。采用最佳置换算法,通常可保证获得最低的缺页率。但由于人目前还无法预知一个进程在内
3、存的若干个页面中,哪一个页面是未来最长时间内不再被访问的,因而该算法是无法实现的,便可以利用此算法来评价其它算法。6.3.2先进先出(FIFO)页面置换算法这是最早出现的置换算法。该算法总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。该算法实现简单只需把一个进程已调入内存的页面,按先后次序链接成一个队列,并设置一个指针,称为替换指针,使它总是指向最老的页面。6.3.3 LRU置换算法LRU置换算法是选择最近最久未使用的页面予以淘汰。 七、实验步骤及结果7.1 验证最佳置换算法7.1.1 实验截图7.1.2 实验分析in727710440804b1777744b222228
4、b31111b4000out727.2 验证先进先出(FIFO)页面置换算法7.2.1 实验截图7.2.2 实验分析in103380812056b11111222b2000055b333336b48888out1037.3 验证LRU置换算法7.3.1 实验截图7.3.2 实验分析in968773712670b1999933366b266661110b38888222b4777777out96831八、报告书写人附录一 最佳置换算法(Optimal)#include <stdio.h>#include <stdlib.h>#include <time.h>#
5、define N 12/*随机数列的长度*/#define B 4 /*内存页面数*/int IsInBuf(int buf,int list,int num)int i,j=-1;int max_p;int max_d=0;for(i=0;i<B;i+)if(bufi=listnum)/当x在buf中,返回-1return -1;else if(bufi=-1) /当x不在buf中,且bufi为空,则把x填入buf,并返回-1bufi=listnum;return -2;for(i=0;i<B;i+)for(j=num+1;j<N;j+)if(bufi=listj)if(m
6、ax_d<j) max_d=j;/bufi在list中的最近距离 max_p=i;/listj在buf的位置break;if(j=N)/如果buf满,并且bufi不在list的后半部分,返回位置ireturn i;return max_p;/返回距离最远的buf的位置int main()int listN;/=4,3,2,1,4,3,5,4,3,2,1,5;int bufB,i,fN,j,m,bufuse=0,tmp;int change=0;/置换次数int interrupt=0;/中断次数int successfully=0;/访问成功次数srand(int)time(NULL);
7、for(i=0;i<B;i+)bufi=fi=-1;printf("nn");printf("The Optimal List:");for(i=0;i<N;i+)listi=(int) rand()%10;printf("%2d",listi);printf("n");printf("nthe lost in Optimal:n");for(i=0;i<N;i+)j=IsInBuf(buf,list,i);if(j=-1)successfully+;for(m=0;m<
8、=B;m+)printf(" ");/*成功的打印*/printf(" in<-%d successfullyn",listi);/*成功的打印*/else if(j=-2)bufuse+;interrupt+;printf("newbuf=");for(m=0;m<bufuse;m+)printf("%d ",bufm);/*缺页中断次数的打印*/for(m;m<B;m+)printf(" ");/*缺页中断的打印*/printf(" in<-%d inter
9、ruptn",listi);/*缺页中断的打印*/elsetmp=bufj;bufj=listi;change+;printf("newbuf=");for(m=0;m<bufuse;m+)printf("%d ",bufm);/*缺页置换的打印*/for(m;m<B;m+)printf(" ");/*缺页置换的打印*/printf(" in<-%d change %d->outn",listi,tmp);/*缺页置换的打印*/printf("nn");prin
10、tf("interrupt=%dn",interrupt);printf("change=%dn",change);printf("successfully=%dn",successfully);return 0;附录二 先进先出(FIFO)页面置换算法#include <stdio.h>#include <stdlib.h>#include <time.h>#define N 12/*随机数列的长度*/#define B 4/*内存页面数*/int IsInBuf(int buf,int x)in
11、t i;for(i=0;i<B;i+)if(bufi=x)/*当x在buf中,返回其位置*/return -1;else if(bufi=-1)/*当x不在buf中,且bufi为空,则把x填入buf,并返回其位置*/bufi=x;return -2;return 0;int main()int listN;/=4,3,2,1,4,3,5,4,3,2,1,5;int bufB,i,fN,j,m,bufuse=0,tmp;int old=0;int change=0;/置换次数int interrupt=0;/中断次数int successfully=0;/访问成功次数srand(int)t
12、ime(NULL);for(i=0;i<B;i+)bufi=fi=-1;printf("nn");printf("The FIFO List:");for(i=0;i<N;i+)listi=(int) rand()%10;printf("%2d",listi);printf("n");printf("nthe lost in FIFO:n");for(i=0;i<N;i+)j=IsInBuf(buf,listi);if(j=-1)successfully+;for(m=0;m&
13、lt;=B;m+)printf(" ");/*成功的打印*/printf(" in<-%d successfullyn",listi);/*成功的打印*/else if(j=-2)bufuse+;interrupt+;printf("newbuf=");for(m=0;m<bufuse;m+)printf("%d ",bufm);/*缺页中断次数的打印*/for(m;m<B;m+)printf(" ");/*缺页中断的打印*/printf(" in<-%d in
14、terruptn",listi);/*缺页中断的打印*/elsetmp=bufold;bufold=listi;old=(old+1)%(int)B;/*数据在中的储存是循环的*/change+;printf("newbuf=");for(m=0;m<bufuse;m+)printf("%d ",bufm);/*缺页置换的打印*/for(m;m<B;m+)printf(" ");/*缺页置换的打印*/printf(" in<-%d change %d->outn",listi,tm
15、p);/*缺页置换的打印*/printf("nn");printf("interrupt=%dn",interrupt);printf("change=%dn",change);printf("successfully=%dn",successfully);return 0;附录三 LRU置换算法#include <stdio.h>#include <stdlib.h>#include <time.h>#define N 12/*随机数列的长度*/#define B 4/*内存页
16、面数*/int IsInBuf(int buf,int list,int num)int i,j=-1;for(i=0;i<B;i+)if(bufi=listnum)/*当x在buf中,返回其位置*/j=i;break;else if(bufi=-1)/*当x不在buf中,且bufi为空,则把x填入buf,并返回其位置*/bufi=listnum;j=-2;break;return j;int Get(int buf,int list,int num) int buffB;int buffuse=0;int i,j,k,m;for(m=0;m<B;m+)buffm=-1;for(i
17、=num-1;i>=0;i-)for(j=0;j<B;j+)if(listi=bufj)for(k=0;k<buffuse;k+)if(listi=buffk)break;if(k=buffuse)buffbuffuse=listi;buffuse+;if(buffuse=B)return j;break;return 0;int main()int listN;/int list12=int bufB,i,fN,j,m,bufuse=0,tmp;int old=0;int change=0;int interrupt=0;int successfully=0;srand(i
18、nt)time(NULL);for(i=0;i<B;i+)bufi=fi=-1;printf("The Random List:");for(i=0;i<N;i+)listi=(int) rand()%10;printf("%2d",listi);printf("nn");printf("nthe lost in LRU:n");change=0;/*中断的次数*/for(i=0;i<N;i+)j=IsInBuf(buf,list,i);if(j=-1)old=Get(buf,list,i);tmp=bufold;bufold=listi;change+;printf("newbuf=");for(m=0;m<bufuse;m+)printf("%d ",bufm);/*缺页置换的打印*/for(m;m<B;m+)printf(" "
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 五一座谈会方案
- 基于流形拟合的对抗性防御算法研究
- 2025年六安b2货运资格证考试题库
- 大气湍流与水下环境下单像素成像研究
- 影视导演艺术与音像制品制作考核试卷
- 2025年外研版三年级起点九年级生物上册月考试卷含答案
- 2025年人教版八年级地理上册阶段测试试卷
- 智能交通资源共享合同(2篇)
- 智慧城市平台合作开发合同(2篇)
- 服务申请高新企业保密协议书(2篇)
- 淋巴瘤的治疗及护理
- 骨科抗菌药物应用分析报告
- 中职安全管理方案
- 百词斩托福词汇excel版本
- 高考写作指导常见议论文论证方法知识梳理与举例解析课件27张
- (完整word版)高中英语3500词汇表
- 玻璃反应釜安全操作及保养规程
- 高中英语新课标词汇表(附词组)
- 证券公司信用风险和操作风险管理理论和实践中金公司
- 一级建造师继续教育最全题库及答案(新)
- 2022年高考湖南卷生物试题(含答案解析)
评论
0/150
提交评论