操作系统页面置换算法实验报告
- 格式:doc
- 大小:114.50 KB
- 文档页数:6
学生实验报告
姓名:年级专业班级学号成绩
【实验结果或总结】(对实验结果进行相应分析,或总结实验的心得体会,并提出实验的改进意见1.程序的执行结果如下:
(1)先进先出页面置换算法
(2)最佳页面置换法
(3)最近最久未使用置换算法
2.以上三个程序通过数组和排序语句实现页面的三种基本调度算法。
(1)先进先出算法事先设定标志k=3,页面每发生一次置换k值增加1。通过取k对3的余数来确定被置换的内存中的页面,当被访问页面存在于内存时,不置换,而直接输出原内存中的3个页面。
(2)最佳置换算法通过设定c1,c2,c3来记录当前内存中的页面被下一次访问的位置(时间),通过对c1,c2,c3的大小比较确定内存中需要被置换的页面。三者中值最大的对应的内存页面选择被置换。即实现了未来最长时间未访问的机制,即最佳置换算法。
(3)最近最久未使用置换算法的原理跟最佳置换算法类似。初始设定变量c1,c2,c3记录当前内存中的以前的最近一次未被访问的位置(时间),比较三者的大小来确定需要被置换的页面。三者中至最小的对应的内存页面选择被置换。即实现了最近最久未使用的机制,即最近最久未使用置换算法。
3.上述三个程序分别能较好的模拟页面的基本调度算法,实现页面的置换,保证进程的正常执行。但也分别存在一些不足。
(1)当内存中三个页面有部分相同时,程序不能很好的实现调度。即c1,c2,c3中有部分变量值相等,源程序可能不能准确的找到调度顺序,如图所示。(LRU算法)
改进的方法为在c1,c2,c3间的大小比较判断语句中增加关系语句的默认处理办法,当三者间有部分相同时,默认选择按从前到后的顺序执行。比如当c2=c3的时候选择页面a[2]进行置换。当c1=c2=c3时则选择页面a[0]进行置换。也就相当于无法运用LRU算法调用的时候折衷采取先进先出置换算法,以实现页面的合理调度,提高页面的利用效率。
指导教师签名:
20 年月日
【备注】