实验报告实验八实验名称:存储管理模拟实验目的:1
掌握请求分页存储管理系统的基本原理2
实现一个模拟的虚拟分页存储管理系统实验要求:编写一个程序,模拟一个虚拟分页存储管理系统
其中,由系统随机产生进程;进程大小、进程到达次序、时间、进程执行轨迹(页面访问顺序)也随机生成,但进程之间必须有并发存在,进程执行时间需有限,进程调度采用时间片轮转算法(以页面模拟);rss驻留集大小物理块分配策略采取固定分配局部置换;分配算法采用按比例分配算法;调页采用请求调页方式;置换分别采用FIFO、LRU(一直没用)访问次数和简单CLOCK算法(循环链表)标志有没有被访问;驻留集大小可调,观察驻留集大小对缺页率的影响
算法思想:FIFO先进先出法LRU最久未使用算法CLOCK简单时钟算法命中率=1-页面失效次数/页地址流(序列)长度驻留集大小可调,观察驻留集大小对缺页率的影响
结构体定义包含链表:空闲页面表忙页面表包含数组:进程数组页面号数组页面页面序号页框号单位时间访问次数上次访问时间页面控制结构页面号指针页面控制表表结构页框号流程图:否是是是开始随机得到进程指令序列为其分配页号分配物理块引用块编号大于物理块
页号在物理块内
选择FIFOLRUCLOCK置换算法置换是否完成
结束实验结果分析:观察数据可看出:横向:三种替换算法的命中率由高到底排列应该是LRU>CLOCK>FIFO
纵向:进程的驻留级越大,其缺页率就越低
实验体会:1
内存中进程的多少会影响驻留集大小和缺页中断率
如果内存中进程太多,将导致每个进程的驻留集太小,发生缺页中断的概率很大
相应地,系统发生抖动的可能性就会很大
如果在内存中保持太少的活动进程,那么所有活动进程同时处于阻塞状态的可能性就会很大,从而降低处理机的利用率
置换算法的好坏将直接影响系统的性能,不适当的置换算法可能导致系统出现“抖动”现象
常用的页面置换算