下载此文档

实验四存储管理实验.docx


文档分类:IT计算机 | 页数:约7页 举报非法文档有奖
1/7
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/7 下载此文档
文档列表 文档介绍
实验四存储管理实验
内存页面调度算法比较
【实验目的】
理解内存页面调度的机理,掌握几种理论调度算法实现,并通过实验比较各种调度算 法的优劣。此外通过实验了解HASH表数据结构的使用。
【准备知识】
C++o指针、结构体(类)。
、 3、 2、 4、 2、 5
而内存可以控制的页面数为3(AP = 3),那么在使用FIFO算法时,这3个页面的内存 使用情况应该是这样的:
不难看出页面换入共7次,diseffect=7o

.与前述算法一样,只有先得到diseffect才能获得最终的"命中率”。
初始化。主要是进程页面page[]和分配的内存页面pagecontrol[],同时产生随机序 列 main[], diseffect 置零。
⑵ 看序列main[]是否有下一个元素,如果有就从main[]获取该page[]的下标,并转到 ⑶;如果没有就转到⑹。
(3)如果该page[]单元在内存中便改变页面属性,使它保留“最近使用”的信息,转到
;否则转到⑷,同时diseffct加⑴。
⑷判断是否有空闲的内存页面,如果有就返回页面指针,转到⑸;否则,在内存页面 中找出最长时间没有使用到的页面,将其"清干净”,并返回该页面指针。
将需处理的page[]与⑷中得到的pagecontrol[]建立联系,同时需让对应的page[]单 元保存“最新使用”的信息,返回⑵。
⑹ 如果序列处理完成,就输出1 ^effect——xl00%,并结束。
total _ instruction

原理简述:
所谓“最近未使用”首先是要对“近”作一个界定,比如CLEAR_PERIOD=50,便是 在CPU最近的50次进程页面处理工作中,找出这50次都没有处理到的页面;如果
这样的页面只有一个,就将其换出,放入需处理的新页面;
有不只一个这样的页面,在这些页面中任取一个换出(可以是下标最小的,或者下 标最大的,都随便),放入需处理的页面;
没有一个这样的页面,随意换出一个页面(可以是下标最小的,或者下标最大的, 都随便)。
算法特点:有一个循环周期,每到达这个周期,所有页面存放是否被CPU处理信息的 属性均被置于初始态(没有被访问)。
图表描述:
还用前面的例子,某进程在硬盘上被划为5个页面,用1、2、3、4、5表示,而处理 机处理它们的顺序为:
1、 4、 2、 5、 3、 3、 2、 4、 2、 5
而内存可以控制的页面数为3 (AP=3), CLEAR_PERIOD取5;循环周期内,如果所 有内存页面均被CPU处理或有多个页面未被CPU处理,取页码最小的页面换出。
图3-1
页面交换共6次,Disaffect=6。
算法实现提示:
⑴初始化。设置两个数组page[ap]和pagecontrol[pp]分别表示进程页面数和内存分配 的页面数,并产生一个的随机数序列main[total_instruction](当然这个序列由page[]的下标 随机构成),表示待处理的进程页面顺序,diseffect置零,设定循环周期CLEAR_PERIOD„
(2)看main[]是否有下一个元素。有,就从main[]中获得一个CPU将处理页面的序号; 没有,转到⑻。
⑶如果待处理的页面

实验四存储管理实验 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数7
  • 收藏数0 收藏
  • 顶次数0
  • 上传人sssmppp
  • 文件大小89 KB
  • 时间2022-06-27