存储管理——页式存储管理

一、页式存储管理的基本思想
*把主存划分成多个大小相等的页架
*程序受页架尺寸限制,程序的逻辑地址也自然分成页
*不同的页可以放在不同页架中不需要连续
*页表用于维系进程的主存完整性。
1、页式存储管理中的地址
*逻辑地址组成:页号和单元号
物理地址组成:页架号和单元号
地址转换通过查阅页表把页号变为页架号即可。
这种存储方式只需要一个位来表示页是否被使用,不需要知道是哪个进程在使用。因此一张位示图即可表明主存的分配情况。
*页式存储管理允许多个进程共享程序和数据。
*数据共享:不同进程可以在页表中填写相同的页号共享数据。
*程序共享:页式管理的不同进程必须使用相同的页号共享代码页。
二、页式存储管理的地址转换
*页表存放在主存,因此每次地址转换必须访问两次主存
*存在问题,降低了存取速度。
解决措施:块表
为提高地址转换速度,设置一个专用的高速存储器,用来存放页表的一部分
块表:存放在高速存储器(cache)中的页表部分
快表表项:页号,页架号:
用联想存储器,按内容寻址,而非按地址访问
/实际寻址中,按页号查快表,若该页在快表中,则由页架号和单元号形成绝对地址,若不在快表中,则再查主存页表形成的绝对地址,同时将该页登记到快表中,当快表填满了,又要登记新页时,则需要在快表中按一定策略淘汰一个旧的登记项/
三、页式虚拟存储的基本思想
把进程全部页面装入虚拟存储器,执行时先把部分页面装入实际内存,然后,根据执行行为,动态调入不在内存的页,同时进行必要的页面调出/现代OS的主流存储/
*首次只把进程第一页今昔装入内存,称为请求页式管理
虚拟存储管理的页表需要扩充:每页的虚拟地址、实际地址。主存驻留标志、写回标志、保护标志、引用标志、可移动标志。
四、页面调度
当主存空间已满而又需要装入新页时,页式虚拟存储管理必须按照一定的算法把已经在主存的一些页调出去
选择淘汰页的工作为页面调度,选择淘汰页的算法称为页面调度算法,如果算法设计不当,会出现刚被淘汰的页面又要立即调入,并如此反复,这种现像称为抖动或颠簸。
五、缺页中断率
假定进程P共n页,系统分配页架数m个,P运行中成功访问次数为S,不成功访问次数为F,总访问次数为A=F+S,则缺页中断率定义为:f=F/A
缺页中断率是衡量存储管理性能和用户编程水平的重要依据
六、反置页表
为页式存储管理设置专门硬件机构:内存管理单元MMU:CPU管理虚拟/物理存储器的控制线路,把虚拟地址映射为物理地址,兵提供存储保护,必要时确定淘汰页面,而这个管理单元需要用到一个数据结构反置页表IPT
反置页表思想
针对内存中的每个页架建立一个页表,按照页架号排序,表项包含:正在访问该页架的进程表示、页号、及特征位和哈希链指针等。用来完成内存页架到访问进程页号的对应,即物理地址到逻辑地址的转换。
反置页表的地址转换过程
MMU通过哈希表把进程标识和虚拟页号转换成一个哈希值,指向IPT的一个表目

发布了8 篇原创文章 · 获赞 0 · 访问量 116
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 数字20 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览