华南师范大学增城学院
实验报告(第 5 次)
实验名称: 存储管理 实验时间: 2011年12月15日
一.实验目的
存储管理的主要功能之一是合理地分配空间。请求页式管理是一种常用的虚拟存储管理技术。
本实验的目的是:
1.通过请求页式存储管理中页面置换算法模拟设计
2.了解虚拟存储技术的特点
3.掌握请求页式存储管理的页面置换算法。
二.实验内容
在一个请求分页系统中,假如一个作业的页面走向为1、2、5、3、1、2、4、2、1、3、4,2、1、4、5,当分配给该作业的物理块数为3时,试分别画出采用OPT算法、LRU算法和FIFO算法时的页面转换图,并计算在访问过程中所发生的缺页次数和缺页率,并比较所得的结果。
三.源程序及主要算法说明
访问过程中的缺页情况(M=3,OPT算法)
| 页面走向 | 1 | 2 | 5 | 3 | 1 | 2 | 4 | 2 | 1 | 3 | 4 | 2 | 1 | 4 | 5 |
| 缺页 | |||||||||||||||
| 以后最长时间不使用的内存页面 | 5 | 3 | 3 | 3 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | ||
| 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 | 1 | ||
| 以后马上可能访问的内存页面 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 3 | 3 | 3 | 3 | 3 | 5 |
| 被换出的页 | 5 | 3 | 1 | 2 | 3 |
访问过程中的缺页情况(M=3,LRU算法)
| 页面走向 | 1 | 2 | 5 | 3 | 1 | 2 | 4 | 2 | 1 | 3 | 4 | 2 | 1 | 4 | 5 |
| 缺页 | |||||||||||||||
| 最近最长时间未用的内存页 | 1 | 2 | 5 | 3 | 1 | 1 | 4 | 2 | 1 | 3 | 4 | 2 | 1 | ||
| 1 | 2 | 5 | 3 | 1 | 2 | 4 | 2 | 1 | 3 | 4 | 2 | 1 | 4 | ||
| 最近刚使用过的内存页 | 1 | 2 | 5 | 3 | 1 | 2 | 4 | 2 | 1 | 3 | 4 | 2 | 1 | 4 | 5 |
| 被换出的页 | 1 | 2 | 5 | 3 | 4 | 2 | 1 | 3 | 2 |
访问过程中的缺页情况(M=3,FIFO算法)
| 页面走向 | 1 | 2 | 5 | 3 | 1 | 2 | 4 | 2 | 1 | 3 | 4 | 2 | 1 | 4 | 5 |
| 缺页 | |||||||||||||||
| 最早进入内存的页面 | 1 | 2 | 5 | 3 | 1 | 1 | 1 | 2 | 2 | 2 | 4 | 4 | 3 | ||
| 1 | 2 | 5 | 3 | 1 | 2 | 2 | 2 | 4 | 4 | 4 | 3 | 3 | 1 | ||
| 最晚进入内存的页面 | 1 | 2 | 5 | 3 | 1 | 2 | 4 | 4 | 4 | 3 | 3 | 3 | 1 | 1 | 5 |
| 被换出的页 | 1 | 2 | 5 | 3 | 1 | 2 | 4 |
四.主要问题和解决方案
在做FIFO算法的时候,与LRU算法混淆,以致结果是一样的。后来经过请教同学,把2个算法的区别弄清楚,讨论如何做更保险,才不会弄错算法。
五.测试数据及结果
测试数据:1、2、5、3、1、2、4、2、1、3、4,2、1、4、5
结果:当M=3时,缺页次数为8,缺页率为8/15(如图1所示)
当M=3时,缺页次数为12,缺页率为4/5(如图2所示)
当M=3时,缺页次数为10,缺页率为2/3(如图3所示)
六.心得体会与自我评价
通过这次上机实验,了解虚拟存储技术的特点,掌握请求页式存储管理的页面置换算法以及掌握了计算缺页次数跟缺页率的算法。让我知道了自己对这些算法的哪部分不理解,重新认识了这些算法。
七.教师评分下载本文