欢迎来到天天文库
浏览记录
ID:12085773
大小:34.00 KB
页数:3页
时间:2018-07-15
《页面置换算法性能分析.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验四页面置换算法性能分析一.实验目的1.掌握LRU、FIFO页面置换算法,2.理解堆栈型算法,3.了解页面置换算法对虚拟存储系统性能的影响。二.实验内容给定页面地址流。使用VC开发模拟程序,模拟在不同实页情况下,FIFO和LRU置换算法对实页的使用情况,假定访问实页的时间为,访问辅存的时间为100计算并在屏幕上输出对应该页地址流在不同实页数和置换算法的情况下的访问时间。多次更改页地址流,重复上述操作,记录时间,观测在FIFO和LRU算法下访问时间和实页数的关系。根据结果理解堆栈型算法。(一)给定页地址流:2,3,2,
2、1,5,1,4,5,3,2,5,2(二)用堆栈法画图计算该页地址流在1-5个实页情况下,使用FIFO和LRU算法的页面命中情况并计算所需时间:(三)程序设计FIFO算法可以用队列来模拟,对页面的访问可以用定时器来模拟。LRU算法可以用堆栈来模拟。程序应该包括一个虚页面队列,该队列用于保存页地址流;一个LRU调度器类用于模拟LRU调度;一个FIFO调度器类用于模拟FIFO调度;一个对话框用于显示调度结果。1、页面地址流保存在页面队列中。2、构造LRU调度器类,该类中包含一个长度为n的堆栈,n表示实页数,该值从1到k(不同
3、的虚页数)循环;可以通过类构造函数传入n。包含一个记数值记录访问时间,记数值初始为0。3、构造FIFO调度器类,该类中包含一个长度为n的堆栈,n表示实页数,该值从1到k(不同的虚页数)循环;可以通过类构造函数传入n。包含一个记数值记录访问时间,记数值初始为0。4、用定时器模拟页面访问,每个时间片从虚页面队列中取出一个虚页号,通过LRU调度器类和FIFO调度器类的对应接口函数将该虚页作为参数传入。1、LRU类的接口函数实现如下功能:用传入的虚页号遍历堆栈,查找与之一致的记录,如果有则表示命中,将对应的虚页号压入堆栈直到覆
4、盖原记录。并将记数值加1。如为查到表示未命中,将对应的虚页号压入堆栈直到堆栈尾,并将记数值加100。2、FIFO类的接口函数实现如下功能:用传入的虚页号遍历堆栈,查找与之一致的记录,如果有则表示命中,将记数值加1。如为查到表示未命中,将对应的虚页号压入堆栈直到堆栈尾,并将记数值加100。3、程序初始化时创建n个FIFO类对象和n个LRU类对象,其堆栈大小分别从1-n。4、虚页队列空表示模拟完成,提前n个FIFO类对象和n个LRU类对象中的记数值和相应参数,在显示对话框中输出并打印。5、与(二)中的结果进行比对。(一)使
5、用多个不同的页地址流多次进行模拟,并保存每次模拟的结果。(二)对结果进行分析,判断两种调度算法的优劣,判断其中那种算法是堆栈型算法。三.实验要求:实验前要做好充分准备,包括汇编程序清单、调试步骤、调试方法,以及对程序结果的分析等。四.调试步骤1.编辑源程序,建立一个基于对话框的VC工程.2.创建虚页队列、定时器、LRU类,FIFO类、确定程序流程。3.创建显示对话框。4.编码、编译、调试。四.时空图模拟用堆栈画图法模拟调度并计算所花费的时间。五.结果对比对比程序模拟和画图模拟的结果,如果应该是一致的。六、实验报告:1、
6、程序说明。说明程序的设计、数据结构、类。2、画出程序框图。3、写出源程序清单和执行结果。
此文档下载收益归作者所有