实验七 - 操作系统页面调度算法

2019-08-31 22:11

实验七 操作系统页面调度算法

一、实验项目名称:

操作系统页面调度算法

二、实验目的和要求:

目的:对操作系统中使用的页面调度算法进行设计。

要求:对教材中所讲述的几种页面调度算法进行深入的分析,通过请求页式存储管理中页面置换算法模拟设计,了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换算法。

三、实验内容

1、设计两个程序模拟实现一个作业在内存中执行的页面置换,并计算缺页中断次数。

3、编制两种页面置换算法:1)FIFO页面置换算法;2)LRU页面置换算法 四、实验原理:

1、FIFO页面置换算法:总是选择在内存中驻留时间最长的一页将其淘汰。 2、LRU页面置换算法:选择最近一段时间内最长时间没有被访问过的页面予以淘汰。

五、参考程序:(提供代码,未改动)

1、FIFO页面置换算法:

#define M 4 /*m为系统分配给作业的主存中的页面数*/ #define N 15 #include void main() {

int a[M];/*定义内存页面数*/ int b[N];/*定义总页面数*/

int c[N];/*定义被淘汰的页面号*/ int i,k,flag,count,m=0; printf(\请输入作业序号:\\n\

- 12 -

实验七 操作系统页面调度算法

for(i=0;i

printf(\发生缺页的面号分别为:\

for(i=0;i

printf(\ } count=M; for(i=M;i

for(k=0;k

flag=1;

if(flag==0) { c[m]=a[0]; m++;

for(k=0;k

printf(\ }

}

printf(\发生缺页的次数=%d\\n\

printf(\缺页中断率=%.2f%%%\\n\ printf(\驻留内存的页号分别为:\ for(i=0;i

printf(\被淘汰的页号分别为:\ for(i=0;i

- 13 -

实验七 操作系统页面调度算法

printf(\}

2、LRU页面置换算法:

#define M 4 /*m为在主存中的页面数*/ #define N 15 #include void main() {

int a[M];/*定义内存页面数*/ int b[N];

int c[N];/*定义被淘汰的页面号*/ int i,j,k,count,flag,m=0; printf(\请输入作业序号:\\n\

for(i=0;i

printf(\发生缺页的面号分别为:\\n\ for(i=0;i

} count=M;

在此处将程序补充完整

printf(\发生缺页的次数=%d\\n\ printf(\缺页中断率=%.2f%%%\\n\

printf(\驻留内存的页号分别为:\

for(i=0;i

printf(\

printf(\被淘汰的页号分别为:\ for(i=0;i

- 14 -

实验七 操作系统页面调度算法

}

六、源程序:

1、FIFO页面置换算法:

算法思想:在算缺页率之前首先进行判断,找到缺页的页面后用“*”进行标记,并保存在页表中,在访问过程中,查看页表,看是否缺页,如果缺页,则在最下面进行标记。知道缺页的页面后,更改每个块中的页面号,以块为单位进行修改,将需要淘汰的页面替换掉,即可得到所需要的结果了。然后利用标记幸好的页面的个数,来算出缺页率。

#include \#define N 15 #define M 4 void main() {

int a[N],i,j,q,b[M]={0},c[M][N],count=0; char flag,f[N];

printf(\请输入页面访问序列:\\n\ for(i=0;i

for(i=0;i

while((a[i]!=b[q])&&(q!=M)) { q++; } if(q==M) {

flag='*'; count++;

}//缺页,则置标志flag为'*'

- 15 -

实验七 操作系统页面调度算法

else flag=' '; if(flag=='*') {

for(j=M-1;j>0;j--) //淘汰最先调入的页面调入当前访问的

b[j]=b[j-1]; b[0]=a[i];

// printf(\发生缺页的页面是:=\\n\ }

for(j=0;j

printf(\ } else {

printf(\被淘汰的页面是:=\\n\ } }

printf(\输出结果为下表(0代表为空,*代表有缺页):\\n\

printf(\);

printf(\页面走向:\输出页面走向 for(i=0;i

- 16 -


实验七 - 操作系统页面调度算法.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:泰国水灾对全球经济的影响zjg

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: