存储管理实验.doc

存储管理实验.doc

ID:49589880

大小:187.00 KB

页数:9页

时间:2020-03-03

存储管理实验.doc_第1页
存储管理实验.doc_第2页
存储管理实验.doc_第3页
存储管理实验.doc_第4页
存储管理实验.doc_第5页
资源描述:

《存储管理实验.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、笫三章存储管理实验内存页面调度算法比较【实验目的】理解内存页ifij调度的机理,掌握几种理论调度算法实现,并通过实验比较各种调度算法的优劣。此外通过实验了解HASH表数据结构的使用。【准备知识】1.C++。指针、结构体(类)。2.据结构HASH表查找方式。3.作系统相关内存交换知识。4.可能用到的几个LTNUX函数:(1)intgetpid()〃获得当前进程的id(2)voidsrand(inta)//以a为种了,为示面产生随机数作准备(3)intrand()〃根据前面的种了,返冋一个随机数【实验内容】

2、对比几种算法的命中率。1.先进先出的算法。FIFO(FirstInFirstOut)2.报近最少使用的算法。LRU(LeastRecentlyUsed)3.报近未使用算法。NUR(NeverUsedRecently)4.最佳置换算法。OPT(OptimalReplacement)【实验指导】拥有页血交换机制的操作系统总是把当前进稈屮急需处理的部分页面换入到内存当屮,而把更多暂时不需处理的页面放置在外存当中,rti于进程需要处理页面的顺序不同,而需要在内存与外存之间进行页面交换,交换算法也就应运而生。木实

3、验并没有进入系统空间对实际进稈页面进行控制,而是在用户空间用线性表的连续存储方式对进程页面交换进行的模拟。一.FIFO1.原理简述:(1)在分配内存页面数(AP)小于进程页面数(PP)时,当然是最先的AP个页面放入内存;(2)这时有需要处理新的页面,贝I」将原理在内存中的AP个页面屮最先进入的调出(是以称为FIFO),然后放入新页面;(3)以后如果有新页血需要调入,按(2)Z规则进行。算法特点:所使用的内存页面构成一个队列。2.图表描述:假设某个进程在硬盘上被化为5个页面(PP=5),以1、2、3、4、

4、5分别表示,而下面是处理机调用它们的顺序(这取决于进程本身):1、4、2、5、3、3、2、4、2、5而内存可以控制的页面数为3(AP=3),那么在使用FIFO算法时,这3个页血的内存使用情况应该是这样的:队列第1位1425333425队列第2位142555342队列第3位14222534图1-1页啲5进入,而最先进入的页面1被调出页面3进入•而此时3个页面中最先进入的页面4被调出虽然有页面需要处理,但是页面本身以在内存中,不需再调入了不难看出本例共换入贞面8次,diseffect=8o3.算法实现提示:

5、要得到“命屮率”,必然应该有一个常量total-instruction记录页面总共使用次数;此外需要一个变量记录总共换入页面的次数(需要换出页面,总是因为没有命屮而产生的)diseffecto利用公式1disefJecl——x]00%可以得到命屮率。totalinstruction的页面数,并产生一个的随机数序列main[total_instruction](当然这个序列由pagef]的下标随机构成),表示待处理的进稈页面顺序,diseffect置零。(2)看main[]«P是否有下一个元素,有就由ma

6、in[]中获取该页面下标,并转到⑶;没有,就转到⑺。⑶如果该page业己在内存中,就转到⑵;否则就到⑷,同时未命中的diseffect加1。⑷观察pagecontrol是否占满,如果占•满需将使用队列(⑹屮建立的)屮最先进入的(就是队列第一个单元)pagecontrol单元“清干净”,同时将对应的page[]单元置为“不在内存中”。(5)将该page[]与pagecontrol[]建立关系(可以改变pagecontrol[]的标示位,也可以采用指针连接,总Z至少要使对应的pagecontrol单元包含两

7、个信息:一是它被使用了,另外是哪个page[]单元使用的;pagc[]单元包含两个信息:对应的pagecontrol单元号、木pagefl单元已在内存屮);(6)将用到的pagecontrol置入使用队列(这里的队列当然是一-种先进先出的数据结构了,而不是泛指),返回⑵;(7)显示1如妇——xlOO%,完成。total_instruction二LRU1.原理简述:(1)在分配内存页面数(AP)小于进程页面数(PP)时,当然是最先的AP个页面放入内存;(2)然则当需要调页面进入内存,而当前分配的内存页面全

8、部不空闲时,选择其中故长时间没有用到那个页面调出,以空出内存来放置新调入的页面(是以称为LRU);算法特点:每个页面都有属性表示有多长时间未被CPU使用的信息。2.图表描述:为了便于比较学习,例了和前面的一样。某进程在硬盘上被划为5个页面,用1、2、3.4、5表示,而处理机处理它们的顺序为:1、4、2、5、3、3、2、4、2、5而内存可以控制的页血数为3(AP=3),那么在使用FIFO算法时,这3个页面的内存使用情况应该是这样的:不难看出页

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。