操作系统页式存储管理精编版

上传人:ahu****ng1 文档编号:130800671 上传时间:2020-05-01 格式:PPT 页数:39 大小:1.05MB
返回 下载 相关 举报
操作系统页式存储管理精编版_第1页
第1页 / 共39页
操作系统页式存储管理精编版_第2页
第2页 / 共39页
操作系统页式存储管理精编版_第3页
第3页 / 共39页
操作系统页式存储管理精编版_第4页
第4页 / 共39页
操作系统页式存储管理精编版_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《操作系统页式存储管理精编版》由会员分享,可在线阅读,更多相关《操作系统页式存储管理精编版(39页珍藏版)》请在金锄头文库上搜索。

1、6 4页式存储管理 6 4 1基本原理6 4 2管理6 4 3硬件支持6 4 4静态页式管理6 4 5请求页式管理6 4 6页式管理的优缺点 6 4 1基本思想 工作原理 用户程序划分把用户程序按逻辑页划分成大小相等的部分 称为页 从0开始编制页号 页内地址是相对于0编址逻辑地址 内存空间按页的大小划分为大小相等的区域 称为内存块 物理页面 内存分配以页为单位进行分配 并按作业的页数多少来分配 逻辑上相邻的页 物理上不一定相邻 6 4 2管理 页表 系统为每个进程建立一个页表 页表给出逻辑页号和具体内存块号相应的关系 6 4 3硬件支持 p 页表 地址越界 l 比较 P l b 页号p页内地址

2、d P d 物理地址 页表地址寄存器 页表长度寄存器 逻辑地址 地址映射机制 二次访问内存第一次取地址第二次存取数据效率较低 p 页表 地址越界 l 比较 P l p p 快表 b 页号p页内地址d P d 物理地址 页表地址寄存器 页表长度寄存器 逻辑地址 地址映射机制 高速缓存 6 4 4静态页式管理 将程序的逻辑地址空间和物理内存划分为固定大小的页或页面 pageorpageframe 程序加载时 分配其所需的所有页 这些页不必连续 1 简单页式管理的数据结构 页表 每个进程有一个页表 描述该进程占用的物理页面及逻辑排列顺序 逻辑页号 本进程的地址空间 物理页面号 实际内存空间 存储页面

3、表 整个系统有一个存储页面表 描述物理内存空间的分配使用状况 数据结构 位示图 空闲页面链表 请求表 整个系统有一个请求表 描述系统内各个进程页表的位置和大小 用于地址转换 也可以结合到各进程的PCB里 2 分配算法 请求n个页面 存储页面表中有n个空闲页面吗 无法分配 返回 设置请求表 将页表始址 页表长度置入请求表中 置状态已分配 搜索存储页面表 分配n个页面 并将页面号填入页表中 3 简单页式管理的地址变换 指令所给出地址分为两部分 逻辑页号 页内偏移地址 查进程页表 得物理页号 物理地址为缩短查找时间 引入快表 按内容查找 associativemapping 即逻辑页号 物理页号 设

4、每个页面长度为1k 指令LOAD1 2500的虚地址为100 依据左图进行地址变换 首先 需要有一个页表地址寄存器和页表长度寄存器 系统把所调度执行的进程页表始址和长度从请求表中取出置入寄存器然后 找到页表 由虚地址100可知 指令在第0页的第100单元中 对应内存地址为1024 2 100 2148当CPU执行到第2148单元时 需要从虚地址2500中取数据 地址变换机构首先将2500的页号和页内位移求出 2 452由页表可知 对应内存8号 内存地址为1024 8 452 8644以上由硬件地址变换机构自动完成 优点 没有外碎片 每个内碎片不超过页大小 一个程序不必连续存放 便于改变程序占用

5、空间的大小 即随着程序运行而动态生成的数据增多 地址空间可相应增长 缺点 程序全部装入内存 受到内存可用页面数的限制 6 4 5动态 请求 页式管理 在进程开始运行之前 不是装入全部页面 而是装入部分页面 之后根据进程运行的需要 动态装入其它页面 当内存空间已满 而又需要装入新的页面时 则根据某种算法淘汰某个页面 以便装入新的页面 请求页式的地址变换与静态页式的相同 但是 由于只让部分页面驻留内存 如何发现那些不在内存的虚页以及如何处理是请求页式必须处理的问题 第一个问题可以通过扩充页表的方法解决 第二个问题当内存没有空闲页面时即是页面置换算法的问题 页表表项 页号 驻留位 内存块号 外存始址

6、 访问位 修改位驻留位 中断位 表示该页是在内存还是在外存访问位 根据访问位来决定淘汰哪页 由不同的算法决定 修改位 查看此页是否在内存中被修改过 缺页中断处理 在地址映射过程中 在页表中发现所要访问的页不在内存 则产生缺页中断 操作系统接到此中断信号后 就调出缺页中断处理程序 根据页表中给出的外存地址 将该页调入内存 使作业继续运行下去如果内存中有空闲块 则分配一页 将新调入页装入内存 并修改页表中相应表项若此时内存中没有空闲块 则要淘汰某页 若该页在内存期间被修改过 则要将其写回外存 查快表 有登记 无登记 查页表 登记入快表 发缺页中断 在主存 在辅存 形成绝对地址 继续执行指令 重新执

7、行被中断指令 恢复现场 调整页表和主存分配表 装入所需页面 主存有空闲块 保护现场 有 选择调出页面 未修改 已修改 把该页写回辅存相应位置 硬件完成 逻辑地址 无 该页修改过 页面置换算法 随机置换算法先进先出算法 FIFO 最近最久未使用算法 LRU LeastRecentlyUsed 时钟页面替换算法 ClockPolicy 最佳置换算法 OPT optimal 1 先进先出算法 FIFO 选择建立最早的页面被置换 可以通过链表来表示各页的建立时间先后 性能较差 较早调入的页往往是经常被访问的页 这些页在FIFO算法下被反复调入和调出 并且有Belady现象 Belady现象 采用FIF

8、O算法时 如果对一个进程未分配它所要求的全部页面 有时就会出现分配的页面数增多 缺页率反而提高的异常现象 Belady现象的描述 一个进程P要访问M个页 OS分配N个内存页面给进程P 对一个访问序列S 发生缺页次数为PE S N 当N增大时 PE S N 时而增大 时而减小 Belady现象的原因 FIFO算法的置换特征与进程访问内存的动态特征是矛盾的 即被置换的页面并不是进程不会访问的 Belady现象的例子 进程P有5页程序访问页的顺序为 1 2 3 4 1 2 5 1 2 3 4 5 如果在内存中分配3个页面 则缺页情况如下 12次访问中有缺页9次 如果在内存中分配4个页面 则缺页情况如

9、下 12次访问中有缺页10次 2 最近最久未使用算法 LRU 该算法淘汰的页面是在最近一段时间里较久未被访问的那一页 它是根据程序执行时所具有的局部性来考虑的 即那些刚被使用过的页面 可能马上还要被使用 而那些在较长时间里未被使用的页面 一般说可能不会马上使用到 给某作业分配了三块主存 该作业依次访问的页号为 4 3 0 4 1 1 2 3 2 于是当访问这些页时 页面淘汰序列的变化情况如下 3 时钟页面替换算法 ClockPolicy 一个页面首次装入主存时 其 引用位 置0 在主存中的任何一个页面被访问时 其 引用位 置1 淘汰页面时 存储管理从指针当前指向的页面开始扫描循环队列 把所迁到

10、的 引用位 是1的页面的 引用位 清成0 并跳过这个页面 把所迁到的 引用位 是0的页面淘汰掉 指针推进一步 它是LRU 最近最久未使用算法 和FIFO的折衷 当发生缺页中断时 将要进入主存的页面是page727 指针指向的是page45 在页框2中 Clock页面替换算法执行如下 page45的 引用位 是1 故它不能被淘汰掉 仅把其 引用位 清0 指针推进 同样道理 page191 在页框3中 也不能被替换 把其 引用位 清0 指针继续推进 在下一页即page556 在页框4中 它的 引用位 是0 于是 page556被page727替换 并把page727的 引用位 置1 指针前进到下一

11、页page13 在页框5中 算法执行到此结束 4 最佳算法 OPT optimal 选择 未来不再使用的 或 在离当前最远位置上出现的 页面被置换 这是一种理想情况 是实际执行中无法预知的 因而不能实现 可用作性能评价的依据 1 分配给进程的物理页面数 2 页面本身的大小 3 程序的编制方法 4 页面淘汰算法 影响缺页次数的因素 例子3 内存分配一页 初始时第一页在内存 页面大小为128个整数 矩阵A128X128按行存放 程序编制方法1 Forj 1to128Fori 1to128A i j 0 程序编制方法2 Fori 1to128Forj 1to128A i j 0 6 4 6页式管理的

12、优缺点 相对于分区管理而言 静态页式有效的解决了外部碎片的问题 当然有少量的内部碎片 但是 静态页式要求全部装入 不支持虚拟存储 因而有了请求页式 允许部分装入 显然地 请求页式更能有效利用有限的内存页面 不过 这种方式需要有效解决缺页率的问题 尤其是页面置换的问题 不论是静态还是请求方式 更多地是从物理页面的角度考虑和解决问题 有的时候 需要从逻辑角度考虑问题 比如共享 这就引入了段式管理方法 习题 某程序在内存中分配三个页面 初始为空 页面走向为4 3 2 1 4 3 5 4 3 2 1 5 计算采用FIFO LRU OPT进行页面置换时相应的缺页次数 FIFO 缺页9次 LRU 缺页10次 OPT 缺页7次 一程序在运行过程中所访问的页面流为3 5 4 2 5 3 1 3 2 5 1 3 1 5 2 若采用OPT算法 则为该程序分配多少个实页最为合理 要求给出分配过程 为什么

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 计算机应用/办公自动化

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号