算法页面淘汰算法实验报告

126邮箱登陆页面  时间:2021-03-28  阅读:()

操作系统实验报告

课题页面淘汰算法

年 月 日

目 录

附源代码………………………………………………………

15

一、实验目的

本实验主要对操作系统中请求分页式内存管理及其应用的一些关键算法进行模拟。学生通过设计与实现Clock算法能够加强对相应理论的理解并对了解操作系统内部的基本处理原理与过程也有很多益处。利用简单的数据结构模拟实现操作系统中的页面置换机制通过写程序模拟实现上述三种内存页面置换算法使学生进一步掌握内存页面置换的方法。对操作系统中内存的管理有一个实践上的认识。

1 、用C语言编写OPT、 FIFO、 LRU三种置换算法。

2、熟悉内存分页管理策略。

3、 了解页面置换的算法。

4、掌握一般常用的调度算法。

5、根据方案使算法得以模拟实现。

6、锻炼知识的运用能力和实践能力。

二、实验要求

设计随机页面序号产生程序并说明随机的性能和其性能可能对算法

的影响

编写页面淘汰算法(FIFO、 OPT、 LRU)

结果数据的显示或提取

结果数据的分析

几点说明

设计并绘制算法流程附加说明所需的数据结构

如何标记时间的先后、最久的将来、最久未被使用

描述Clock算法的基本原理、必要的数据结构、算法执行流程图、编码

实现。

1 初始化输入作业可占用的总页框数初始化置空。

2输入请求序列输入一个作业页号访问请求序列依次占用相应页框直至全部占用

3 Clock算法当页框全部占用后对于后续新的页号访问请求执行’

Clock算法淘汰1个页面后装入新的页号。

4显示当前分配淘汰序列显示淘汰的页号序列。

三、背景知识

在操作系统当中在进程运行过程中若其访问的页面不在内存中而需把他

们调入内存但内存已无空闲空间时为了保证该进程能够正常的运行系

统必须从内存中调出一页程序或数据送到磁盘的兑换区中但是应该是哪个

页面被调出需根据一定的算法来确定。通常我们把这一类的算法称为

“页面置换算法” 页面置换算法执行效率的高低往往直接影响到操作系统

的性能。

内存页面置换算法

1、 <1>先进先出调度算法FIFO

先进先出调度算法根据页面进入内存的时间先后选择淘汰页面。本算法实现时需要将页面按进入内存的时间先后组成一个队列每次置换掉最早进入的页面。这是最早出现的置换算法该算法总是淘汰最先进入内存的页面即选择在内存中驻留时间最长的页面换出予以淘汰。

该算法实现简单只需把一个进程已调入内存的页面按先后次序链接成一个队列并设置一个指针称为替换指针使它总是指向最老的页面。但该算法与进程实际运行的规律不相适应因为在进程中有些页面经常被访问比如含有全局变量、常用函数、例程等的页面 FIFO算法并不能保证这些页面不被淘汰。

<2>最近最久未使用的置换算法 LRU

最近最久未使用的置换算法是根据页面调入内存后的使用情况进行’

决策的。 由于无法预测各页面将来的使用情况只能利用“最近的过去”作为“最近的将来”的近似因此 LRU置换算法是选择最近最久未使用的页面予以淘汰。该算法赋予每个页面一个访问字段用来记录一个页面自上次被访问以来所经历的时间t, 当须淘汰一个页面时选择现有页面中其t值最大的即最近最久未使用的页面予以淘汰。

<3>最佳置换算法OPT

最佳置换算法是可以说的一种理想的页面置换算法它是由Belady于1966年提出的一种理论上的算法。其所选择的被淘汰页面将是以后永不使用的或许是在最长(未来)时间内不再被访问的页面。采用最佳置换算法通常可保证获得最低的缺页率。但由于人目前还无法预知一个进程在内存的若干个页面中哪一个页面是未来最长时间内不再被访问的因而该算法是无法实现的但可以利用此算法来评价其它算法。

<4>时钟页面置换算法

时钟页面置换算法是把所有的页面都保存在一个类似钟面的环形链表中一个表针指向最老的页面如图所示。

当发生缺页中断时算法首先检查表针指向的页面如果它的R位是0就淘汰该页面并把新的页面插入这个位置然后把表针前移一个位置如果R位是1就清除R位并把表针前移一个位置重复这个过程直到找到了一个R位为0的页面为止。

4、 总体设计

根据要求设计页面淘汰算法的活动图

运行程序进入主页面在正上方已经通过随机生成函数生成了页面号在其下方显示可选项 0、退出程序1 、 FIFO算法2、 OPT算法

3、 LRU算法。根据需要选择相应的

法程序自动生成页面淘汰的先后顺序以及置换次数和缺页次数并打印在下方执行完

以后再次进入主页面到输入0 退出程序。算法流程图

FIFO算法流程图

OPT算法流程图

载入该页面 否 内存物理块集合已

LRU算法流程图

5、 详细设计

一 、设计思想

1 、 最佳置换算法(OPT)

用数组Temppages[]存储当前物理块中页面信息数组TimeArry[]存储当前在物理块中的页面的获得内存时的时间当页面不在内存中时根据当前已获得物理块数的页面在所有的页面当中将来不在请求内存或者很少请求内存的情况进行置换

2、 先进先出算法(FIFO)

用数组Temppages[]存储当前物理块中页面信息变量temp记录内存中物理块页面置换状态每进行一次置换页面置换状态变化便于下一次的置换。

妮妮云(43元/月 ) 香港 8核8G 43元/月 美国 8核8G

妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款,超过2天不退款 物...

PhotonVPS:美国Linux VPS半价促销2.5美元/月起,可选美国洛杉矶/达拉斯/芝加哥/阿什本等四机房

photonvps怎么样?photonvps现在针对旗下美国vps推出半价促销优惠活动,2.5美元/月起,免费10Gbps DDoS防御,Linux系统,机房可选美国洛杉矶、达拉斯、芝加哥、阿什本。以前觉得老牌商家PhotonVPS贵的朋友可以先入手一个月PhotonVPS美国Linux VPS试试了。PhotonVPS允许合法大人内容,支持支付宝、paypal和信用卡,30天退款保证。Photo...

BlueHost 周年庆典 - 美国/香港虚拟主机 美国SSD VPS低至月32元

我们对于BlueHost主机商还是比较熟悉的,早年我们还是全民使用虚拟主机的时候,大部分的外贸主机都会用到BlueHost无限虚拟主机方案,那时候他们商家只有一款虚拟主机方案。目前,商家国际款和国内款是有差异营销的,BlueHost国内有提供香港、美国、印度和欧洲机房。包括有提供虚拟主机、VPS和独立服务器。现在,BlueHost 商家周年活动,全场五折优惠。我们看看这次的活动有哪些值得选择的。 ...

126邮箱登陆页面为你推荐
themesgoogle字节跳动回应TikTok易主#北京字节跳动科技有限公司#小说审核有三面么?我面试了两轮就叫我回家等消息了 要是刷下来了也该告结点cuteftppiaonimai跪求朴妮唛的的韩文歌,不知道是哪一部的,第一首放的是Girl's Day《Oh! My God》。求第三首韩文歌曲,一男一女唱的。可信网站可信网站 是自己去注册的还是由做网站 的人帮弄的?什么是seoSEO网站优化是什么啊?艾泰科技艾泰的品牌介绍店铺统计淘宝店运营每天需要统计哪些数据,我要做个表格discuz7.0如何建立Discuz!7.0.0论坛drupal中文怎么导入Drupal中文语言包
虚拟主机代理 购买域名 域名查询系统 加勒比群岛 美元争夺战 万网优惠券 e蜗 卡巴斯基官方免费版 域名转向 php空间推荐 美国独立日 环聊 cxz 贵阳电信 登陆qq空间 中国联通宽带测试 1美元 买空间网 域名和主机 免备案cdn加速 更多