操作系统课程设计报告起评分理论成绩实践成绩总成绩院系: 信息管理学院专业: 计算机科学与技术班级: 计科 Q1241 班学号: 12150123 姓名: 罗家骏专题: 页面置换算法一:实验目的 1、熟悉内存分页管理策略。 2、了解页面置换的算法,掌握一般常用的调度算法。 3、掌握虚拟存储请求页式存储管理中几种基本页面置换算法的基本思想和实现过程,并比较它们的效率。 4、锻炼知识的运用能力和动手实践能力。二:实验原理 ,若在页面中发现所要访问的页面不在内存中,则产生缺页中断。当发生缺页中断时,如果操作系统内存中没有空闲页面,则操作系统必须在内存选择一个页面将其移出内存,以便为即将调入的页面让出空间。而用来选择淘汰哪一页的规则叫做页面置换算法。 2. 最佳置换算法( OPT ) (理想置换算法) :从主存中移出永远不再需要的页面;如无这样的页面存在,则选择最长时间不需要访问的页面。于所选择的被淘汰页面将是以后永不使用的,或者是在最长时间内不再被访问的页面,这样可以保证获得最低的缺页率。 3. 先进先出置换算法( FIFO ) :是最简单的页面置换算法。这种算法的基本思想是:当需要淘汰一个页面时,总是选择驻留主存时间最长的页面进行淘汰, 即先进入主存的页面先淘汰。其理由是:最早调入主存的页面不再被使用的可能性最大。 (LRU )算法:这种算法的基本思想是:利用局部性原理, 根据一个作业在执行过程中过去的页面访问历史来推测未来的行为。它认为过去一段时间里不曾被访问过的页面,在最近的将来可能也不会再被访问。所以,这种算法的实质是:当需要淘汰一个页面时,总是选择在最近一段时间内最久不用的页面予以淘汰。任务:设计一个虚拟存储区和内存工作区,编程序演示下述算法的具体实现过程,并计算访问命中率: 要求设计主界面以灵活选择某算法,且以下算法都要实现 1)先进先出算法( FIFO ) 2)最近最久未使用算法( LRU ) 3)最佳置换算法( OPT ) 思想: 1. 最佳置换算法: 最佳置换算法是一种理论上的算法, 其所选择的被淘汰页面, 将是以后永不使用的,或者是在最长(未来)时间内不再被访问的页面。采用最佳置换算法,通常可保证获得最低的缺页率。 70120304230321201701 77722224440000000777 00000333222221111100 00111100033333222221 2. 先进先出页面置换算法: 这是最早出现的置换算法。该算法总是淘汰最先进入内存的页面, 即使选择在内存中驻留时间最久的页面予以淘汰。该算法实现简单, 只需把一个进程已调入内存的页面,按先后次序连接成一个队列,并设置一个指针,成为替换指针, 使它总是指向最老的页面。但该算法与进程实际运行的规律不相适应,因为在进程中, 有些页面经常被访问,所以先进先出算法并不能保证这些页面不被淘汰。 70120304230321201701 77722224440000000777 00000333222222111100 00111100033333222221 3. 最近最久未使用置换算法: 最久最久未使用的页面置换算法, 是根据页面调入的先后的使用情况进行决策的。该算法赋予每个页面一个访问字段, 用来记录一个页面自上次被访问以来经历的时间 t ,当须淘汰一个页面时,选择现有页面中其 t 值最大的,即使最近最久未使用的页面予以淘汰。最近最久未使用算法 70120304230321201701 77722224440001111111 00000000033333300000 00111333222222222777 任务目的: 1 .通过模拟实现请求页式存储管理的几种基本页面置换算法,了解虚拟储技术的特点。 2 .通过对页面、页表、地址转换和页面置换过程的模拟,加深对请求调页系统的原理和实现过程的理解。 3. 掌握虚拟存储请求页式存储管理中几种基本页面置换算法的基本思想和实现过程,并比较它们的效率。方案: 输入页面序列,缺页时按 OPT . FIFO 、 LRU 、的策略进行页面置换,输出置换情况和缺页次数。假设页面数不超过 total_pages 。 Sum[Max] 表示简化了的页表, 只包含页号序列。 distribute_block 表示分配给该进程的块数。 count 用来表示置换次数。初始化: 输入分配的块数 distribute_block , 输入页面序列,存放于数组 Sum 中。按照循环,依次查找页面是否存在于页表中,不存在则置换页面,初始为0,变化同上。格式化依次输出访问下一个页面后的页表,然后输出缺页中断总次数框图: 程序要点详解: #include<iostream> using names
页面置换实验报告 来自淘豆网m.daumloan.com转载请标明出处.