课程设计 页面置换算法--先进先出算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

淮阴工学院
操作系统课程设计报告
选题名称:页面置换算法
系(院):管理工程学院
专业:信息管理与信息系统
班级:信管1131
姓名:周夏青、张婷婷
学号: 1131807102、1131807103
指导教师:陆华奇、邱军林
学年学期:2015~ 2016学年第1学期
2015 年12 月20 日
页面置换算法
——先进先出算法
一、实验目的
“操作系统课程设计”是理解和巩固操作系统基理论、原理和方法的重要实践环节。

主要任务是实现操作系统和相关系统软件的设计,其中涉及进程创建,同步,进程间通信,存储管理,文件系统等操作系统概念。

先进先出算法给出页面访问的顺序与分配给作业的主存块数,使用队列作为数据结构编写算法,实现统计缺页次数与页面置换操,用C语言编程并用文档形式给出算法分析与实现过程。

二、实验要求
1、输入当前要调用的页面号a[i]
2、判断该页面是否已在队列内,
(1)若在队列内,不执行任何操作
(2)若不在队列内。

则执行以下操作
3、判断队列是否已满
(1)若队列未满,直接把该页面号a[i]存入队列
(2)若队列已满,删除并返回队头元素,然后把该页面号a[i]存入队列
4、输出置换次数,依次输出置换出的页面
三、实验内容
FIFO算法总是淘汰最先调入主存的页面,即淘汰在主存中驻留时间最长的页面,认为驻留时间最长的页不再使用的可能性较大。

代码如下:
#include<stdio.h>
#define M 24
#define N 4
void FIFO(int a[N],int b[M])
{
int i,j,k;
int c[M]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; float s;
for(i=0;i<N;i++)
{
a[i]=b[i];
for(j=0;j<=i;j++)
{
printf("%d ",a[j]);
}
printf("\n");
}
k=N;
for(j=N;j<M;j++)
{
for(i=0;i<N;i++)
if(b[j]==a[i])
{
c[j]=1;
break;
}
if(c[j]==1)
{
for(i=0;i<N;i++)
printf("%d ",a[i]);
}
if(c[j]==0)
{ a[k%N]=b[j];
k++;
for(i=0;i<N;i++)
printf("%d ",a[i]);
}
printf("\n"); }
s=k*1.0/M;
printf("中断次数为:%d\n",k);
printf("缺页率为:%f\n",s);
}
void main()
{ int a[N]={0,0,0,0};
int b[M]={7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1,5,2,6,4}; FIFO(a,b);
}(如图1-2)
图 1
图 2
其运行结果如下:
图3
若改变置换总次数,其运行如下:(如图4-6)
图 4
图 5
图 6
若改变物理块,其运行结果如下:(如图7-9)
图7
图8
图9
由结果可以看出,使用FIFO算法,总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面以淘汰。

四、实验总结
通过这次课程设计,我们组能够进一步掌握一些关于内存分配管理的算法,进一步了解了什么是缺页中断,以及处理缺页中断的调度算法。

通过合作编程,我们都加深了对理论学习的理解。

这个程序的主要思想就是要实现换页,怎么样输出淘汰的序列,计算缺页次数和缺页率。

在程序中主要就是将在访问串中将来再也不出现的或是在离当前最远的位置上出现的页淘汰掉。

当距离相等的时候就比较使用的次数,淘汰使用次数较少的那页。

该过程就可以用FIFO算法来实现,当主函数调用任意其中函数时来实现其算法。

参考书目
1、计算机操作系统教程徐甲同等编西安电子科技大学出版社
2、计算机操作系统(第三版)汤小丹、梁红兵、哲凤屏、汤子瀛编著的西安电子科技大学出版
3、C语言程序设计教程李清政、叶斌、雷辉、陈世强主编中国铁道出版社
4、C++面向对象程序设计李涛、李琳、陈良斌等编著高等教育出版社
5、计算机操作系统教程周长林等编高等教育出版社
课程设计
11
指导教师评语
学号 1131807102 1131807103
姓名 周夏青、张婷婷
班级 信管1131
选题 名称 数据排序
序号 评价内容
权重(%)
得分 1 考勤记录、学习态度、工作作风与表现。

5 2 自学情况:
上网检索机时数、文献阅读情况(笔记)。

10 3 论文选题是否先进,是否具有前沿性或前瞻性。

5 4
成果验收:
是否完成设计任务;能否运行、可操作性如何等。

20
5
报告的格式规范程度、是否图文并茂、语言规范及流
畅程度;主题是否鲜明、重心是否突出、论述是否充分、结论是否正确;是否提出了自己的独到见解。

30
6 文献引用是否合理、充分、真实。

5
7 答辩情况:
自我陈述、回答问题的正确性、用语准确性、逻辑思维、是否具有独到见解等。

25
合计
指导教师(签章):
年月日。

相关文档
最新文档