请求页式存储管理

请求页式存储管理

ID:9298556

大小:64.00 KB

页数:6页

时间:2018-04-27

请求页式存储管理_第1页
请求页式存储管理_第2页
请求页式存储管理_第3页
请求页式存储管理_第4页
请求页式存储管理_第5页
资源描述:

《请求页式存储管理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、renwairen369@yahoo.com.cn请求页式存储管理1.设计要求设计一个请求页式存储管理方案。并编写模拟程序实现之。页面淘汰算法采用FIFO页面淘汰算法,并且在淘汰一页时,只将该页在页表中抹去。而不再判断它是否被改写过,也不将它写回到辅存。方案提示:1、产生一个需要访问的指令地址流,它是一系列需要访问的指令的地址。为不失一般性,你可以适当地(用人工指定地方法或用随机数产生器)生成这个序列,使得50%的指令是顺序执行的。25%的指令均匀地散布在前地址部分,25%的地址是均匀地散布在后地址部分。2、指定合适的页面尺寸(例如以1K或2K为1页);  3、指定

2、内存页表的最大长度,并对页表进行初始化;4、每访问一个地址时,首先要计算该地址所在的页的页号,然后查页表,判断该页是否在主存——如果该页已在主存,则打印页表情况;如果该页不在主存且页表未满,则调入一页并打印页表情况;如果该页不足主存且页表已满,则按FIFO页面淘汰算法淘汰一页后调入所需的页,打印页表情况;逐个地址访问,直到所有地址访问完毕。2.问题分析分页存储管理,是将一个进程的逻辑地址空间分成若干个大小相等的片,称为页面或页,并为各页加以编号。相应地,也把内存空间分成与页面相同大小的若干个存储块,称为(物理)块或页框(frame),在为进程分配内存时,以块为单位将

3、进程中的若干个页分别装入到多个可以不相邻接的物理块中系统为每个进程建立一个页表,页表给出逻辑页号和具体内存块号相应的关系。一个页表中包含若干个表目,表目的自然序号对应于用户程序中的页号,表目中的块号是该页对应的物理块号。请求页式存储管理方式是一种实现虚拟存储器的方式,是指在进程开始运行之前,不是装入全部页面,而是装入一个或零个页面,之后根据进程运行的需要,动态装入其它页面。当内存空间已满,而又需要装入新的页面时,则根据某种算法淘汰某个页面,以便装入新的页面。请求页式存储管理主要需要解决以下问题:系统如何获知进程当前所需页面不在主存;当发现缺页时,如何把所缺页面调入主

4、存;当主存中没有空闲的页框时,为了要接受一个新页,需要把老的一页淘汰出去,根据什么策略选择欲淘汰的页面。本程序中采用先来先服务的淘汰方式。By张焕人renwairen369@yahoo.com.cn1.算法与数据结构请求分页存储管理方式当中用到的主要数据结构就是页表项。与普通分页管理存储方式当中的页表项相比,请求分页存储管理方式的页表项要进行相应的补充,共程序在换进、换出内存时参考。具体而言,请求分页存储管理方式的页表项一般包括以下几项:页号、驻留位、内存块号、外存地址、访问位、修改位、(存取控制、辅存地址)。其中,中断位表示该页是在内存还是在外存;访问位表示该页最

5、近被访问过,根据访问位来决定淘汰哪页;修改位用于查看此页是否在内存中被修改过。本程序中采用的页表项数据结构如下(由于以上所述的有些域在程序中用不到,因此进行了相应的简化):typedefstructpa//页表项的数据结构{intpn;//页号intbn;//物理块号bools;//状态位intad;//外存地址}pageitem;另外,为了使用先进先出的页面置换方法,还需要定义一个FIFO链表。具体数据结构如下:typedefstructp//页标置换的FIFO链表{intnum;//记录页号structp*next;}flink;By张焕人renwairen36

6、9@yahoo.com.cn1.程序流程图2.运行结果演示本程序利用VC编写,在VisualStudio环境中调试通过。运行程序,将会提示输入指令的逻辑地址,输入之后,程序将按照请求分页存储管理方式来管理内存中的物理块。程序的运行过程及运行结果如下:欢迎使用请求分页存储管理方式模拟程序请输入一个指令地址(0000~6144):0100By张焕人renwairen369@yahoo.com.cn此指令页号为0此页面已调入内存当前内存中物理块的情况页号物理块号状态位外存地址00120000请输入一个指令地址(0000~6144):1240此指令页号为1此页面已调入内存当

7、前内存中物理块的情况页号物理块号状态位外存地址00120000147121024请输入一个指令地址(0000~6144):0333此指令页号为0此页面已在内存中当前内存中物理块的情况页号物理块号状态位外存地址00120000147121024请输入一个指令地址(0000~6144):0431此指令页号为0此页面已在内存中当前内存中物理块的情况页号物理块号状态位外存地址00120000147121024请输入一个指令地址(0000~6144):5146此指令页号为5此页面已调入内存当前内存中物理块的情况页号物理块号状态位外存地址001200001471210245

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

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

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