实验二:存储管理

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

实验三:存储管理(选做一题)一、动态分区分配方式的模拟1、实验目的:了解动态分区分配方式中的数据结构和分配算法,并进一步加深对动态分区存储管理方式及其实现过程的理解2、实验内容:(1)用C语言分别实现采用首次适应算法和最佳适应算法的动态分区分配过程和回收过程。其中,空闲分区通过空闲分区链来管理;在进行内存分配时,系统优先使用空闲区低端的空间。(2)假设初始状态下,可用的内存空间为640KB,并有下列的请求序列:•作业1申请130KB•作业2申请60KB•作业3申请100KB•作业2释放60KB•作业4申请200KB•作业3释放100KB•作业1释放130KB•作业5申请140KB•作业6申请60KB•作业7申请50KB请分别采用首次适应算法和最佳适应算法进行内存的分配和回收,要求每次分配和回收后显示出空闲内存分区链的情况。3、思考:(1)采用首次适应算法和最佳适应算法,对内存的分配和回收速度有什么不同的影响?(2)如何解决因碎片而造成内存分配速度降低的问题?二、请求分页存储管理方式的模拟1、实验目的:通过对页面、页表、地址转换和叶面置换过程的模拟,加深请求分页系统的原理和实现过程的理解。2、实验内容(1)假设每个页面中可存放10条指令,分配给以作业的内存块数为4。(2)用C语言模拟实现一作业的执行过程。该作业有320条指令,即它的地址空间为32页,目前它的所有页都还没调入内存。在模拟过程中,如果所访问的指令已在内存,则显示其物理地址,并转下一指令。如果所访问的指令还未装入内存,则发生缺页,此时需要记录缺页的次数,并将相应页调入内存。如果内存块已满,则需要进行页面置换。最后显示其物理地址,并转下一指令。在所有320条指令执行完毕,请计算并显示作业运行过程中发生的缺页率。(3)置换算法:请分别考虑OPT、FIFO和LRU算法。(4)为了不失一般性,作业中指令的访问次序按下述原则生成:50%的指令是顺序执行的,25%的指令是均匀分布在前地址部分,25%的指令均匀分布在后地址部分。具体实施办法是:•在[0,319]之间随机选取一条起始执行指令,其序号为m;•顺序执行下一条指令,即序号为m+1的指令;•通过随机数,跳转到前地址部分[0,m-1]中的某条指令处,其序号为m1;•顺序执行下一条指令,即序号为m1+1的指令;•通过随机数,跳转到后地址部分[m1+2,319]中的某条指令处,其序号为m2;•顺序执行下一条指令,即序号为m2+1的指令;•重复跳转到前地址部分、顺序执行、跳转到后地址部分、顺序执行的过程,直至执行320条指令。3、思考(1)如果增加分配给作业的内存块数,将会对作业运行过程中的缺页率产生什么影响?(2)为什么一般情况下,LRU具有比FIFO更好的性能?

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功