- 1、本文档共68页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 5.5.5请求段页式管理的实现原理 地址的构成 逻辑上分段:便于共享和保护 虚地址组成(二维):段号、段内位移(页号、页内位移) 内存分块:便于分配和内存的利用。 段号S 段内位移 页号P 页内位移W 分解为 * 段表、段页表(页表) 段号 状态 页表大小 页表起址 给进程分配的段表 页号 状态 块号 给第X段分配的页表(段页表) * 地址变换过程 进程A对应的程序空间 分段 0 1 2 给进程A分配的段表 段页式内存管理的段表、页表和内存的关系 逻辑上分段 物理上分块 * 段页式管理地址映射 根据程序的逻辑地址得到段号和段内位移,并将段内位移根据页容量分解为页号和页内位移。 根据该进程的段表寄存器得到段表起始地址,在段表中查找该段号的表项,得到页表起始地址。 根据页号在页表中查找该页对应的内存块号。 根据块号计算得到该块的起始地址。 将块的起始地址加上页内位移,得到物理地址。 * 段页式存储管理中每次存取须经过三次主存访问 第一次:访问段表,得到页表起始地址; 第二次:访问页表,得到主存块号; 第三次:存取 。 * 作业 习题P135:5.19 * 请求页式管理的调入策略 预测调页:分析预测,运行前调入 系统根据作业运行的情况,预测哪些页将要运行,在其运行之前先行调入内存,这样在程序运行的过程中就不会出现缺页中断。 缺点:系统无法预计系统中作业的运行情况,难以实现。 请求调页(请求分页):缺页请求,运行时调入 进程在执行的过程中,发现要执行的程序或处理的数据不在内存,向系统提出调入相应程序的请求,系统响应用户的请求将它所请求的页调入内存。 * 请求页式管理的页表结构 页表:反映该页是否在内存,在外存的位置,在内存的时间的长短,是否需要回写等。 页号: 块号: 中断位:0 表示该页在内存,1示该页不在内存(需要缺页中断) 辅存地址:该页在辅存的位置 修改位:0 表示该页调入内存后没有修改,1表示页调入内存后修改过 引用位:0 表示最近没有被访问,1表示最近被访问过 页号 块号 中断位 辅存地址 修改位 引用位 请求分页的页表结构 …… * 补充:多级页表 二级页表 问题:页表占用存储空间太大 解决:将页表也分页后,对页表占用的存储空间的分配也采用动态方式分配(部分分配),提高内存利用率。 页表页:将页表分页,称为页表页,大小与页面长度相同。 页目录表:为页表页建立的地址索引表称为页目录表。 二级页表机制:页目录表是一级页表、页表页是二级页表,共同构成二级页表机制。 * 二级页表结构 * 具有二级页表的地址结构 * 二级页表机制的地址变换 * 5.4.4 请求页式管理的页面置换算法 当要将辅存中的一页面并送入到全满的内存中时,必须把已在内存中的某一页淘汰掉。用来选择淘汰哪一页的规则叫做置换算法,也称为淘汰算法。 常用算法: 先进先出算法FIFO:淘汰先调入内存的页 最久未使用淘汰算法LRU:淘汰未被访问的页中时间最长的页 最近未使用淘汰算法NUR:淘汰第1个最近未被访问的页(淘汰页表中第一个访问位为0的页) 最不经常使用页面淘汰算法(LFU):淘汰那些到当前时间为止访问次数最少的页。页表中增加一个访问记数器。 最佳算法:当要调入一新页而必须淘汰一旧页时,所淘汰的页是以后不再使用的,或者是以后相当长的时间内不会使用的。这种算法是不可能的。 页面淘汰算法优劣的衡量标准:缺页中断率f’ f’=f/a (a是总的页面访问次数,f是缺页中断次数) * 【例】一个进程已分到4个页帧(块)(M=4),其页表如下表所示,当进程访问第4页时产生缺页中断,请分别用FIFO、LRU、NRU算法决定将哪一页淘汰?是否需要回写? 页表: 页号 页帧 装入时间 最近访问时间 访问位 修改位 2 0 60 161 0 1 1 1 130 160 0 0 0 2 26 162 1 0 3 3 20 163 1 1 FIFO:淘汰最先调入的页面(页帧为3的
文档评论(0)