已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
韩都衣舍官方旗舰店韩都衣舍女装您值得拥有 1 操作系统虚拟内存作用与设置 背景请求页面调度进程创建页面置换帧分配系统颠簸其他考虑 2 背景 虚拟内存 virtualmemory 允许进程的执行不必完全在内存中 程序可以比物理内存大在许多情况下不需要将整个程序放到内存中 例 处理异常错误条件的代码 几乎不执行 数组 链表和表通常分配了比实际所需更多的内存程序的某些选项或特点可能很少使用能够执行只有部分在内存中的程序的好处程序不再受现有的物理内存空间限制更多程序可同时执行 CPU利用率相应增加用户程序会运行的更快虚拟内存的实现 请求页面调度 demandpaging 3 请求页面调度 请求页面调度 分页 交换基本概念有效 无效位 区分哪些页在内存中 哪些页在磁盘上页错误陷阱 page faulttrap 访问标记为无效的页引起 处理程序 检查进程的页表 确定应用是否合法非法 终止进程 否则 表示引用有效但尚未调入页面 转3 找到一个空闲帧调度一个磁盘操作 将所需页调入刚分配的帧修改进程的内部表和页表 表示该页已在内存中重新开始因页错误陷阱中断的指令 4 纯粹请求页面调度 puredemandpaging 只有在需要时才将页调入内存引用的局部性 localityofreference 支持请求页面调度的硬件页表 有效 无效位 次级存储器 保存不在内存中的页 说明 为保证在页错误后能够重新运行指令 还需要相当的软件和额外的体系结构限制 5 2 请求页面调度的性能 有效访问时间 1 p xma px页错误时间p 页错误概率ma 内存访问时间页错误时间有很多 三个主要的如下处理页错误中断读入页重新启动进程有效访问时间与页错误率直接有关对于请求页面调度 降低页错误率很重要交换空间的处理和使用进程开始时将整个文件映象复制到交换空间 从交换空间调页开始时从文件系统调页 出现置换时将页写入交换空间直接从文件系统中调页 6 进程创建 由虚拟内存带来两种用于提高进程创建和运行性能的技术1 写时拷贝 写时复制copy on write 减少不必要的内存复制父进程与子进程开始时共享同一页面 页面标记为写时复制如果任何一个进程需要对页进行写操作 创建一个共享页的拷贝Windows2000 Linux Solaris2Vfork virtualmemoryfork 父进程挂起 子进程使用父进程的地址空间 7 2 内存映射 memorymapping 文件 允许一部分虚拟内存与文件逻辑相关联 可将一磁盘块映射成内存的一页 或多页 开始的文件访问按普通请求页面调度来进行以后文件的读 写按通常的内存访问来处理 不使用系统调用read和write 简化了文件访问和使用 8 页面置换 问题由来 出现页错误后找不到空闲帧可用 页置换 pagereplacement 基本方法 如果没有空闲帧 就查找当前不在使用的帧 并使之空闲 释放 包含置换的页错误处理程序查找所需页在磁盘上的位置查找一空闲帧如果有 使用如果没有 使用页置换算法选择一个 牺牲 帧 victimframe 将牺牲帧的内容写到磁盘上 改变页表和帧表将所需页读入空闲帧 改变页表和帧表重启用户进程 9 修改位 modifybit 脏位 dirtybit 设置 从磁盘读入后发生修改 置换时要写到磁盘上未设置 从磁盘读入后未发生修改 不用写回磁盘降低用于处理页错误所需要的时间页置换算法 如何选择要置换的帧 最小页错误率 帧分配算法 决定为进程分配多少内存引用串 referencestring 内存的引用序列人工生成跟踪一个给定系统并记录每个内存引用地址 为降低数据量 对给定页大小 只考虑页码 不需要完整地址若有一个对页p的引用 则任何紧跟着的对页p的引用决不会产生页错误引用串通常格式 1 4 1 6 1 6 1 2 3 5 10 1 FIFO页置换 思想 为每个页记录该页调入内存的时间 置换时选择最旧的页实现 创建一个FIFO队列 管理内存中的所有页 置换队列的首页 并不需要记录确切时间 分析 容易理解和实现 性能并不总是很好例 可用帧数量3 引用串如下 70120304230321201701 缺页率p 15 20 75 11 Belady异常 页错误率随着所分配的帧数增加而增加的现象 例 可用帧数3 9次缺页 可用帧数4 10次缺页 12 2 最优页置换 optimalpage replacementalgorithm 思想 置换那些在未来最长时间中不会被使用的页例 可用帧数量3 引用串如下 70120304230321201701 缺页率p 9 20 45 13 分析页错误率最低 无Belady异常难于实现 需要引用串的未来知识常用于比较研究 14 3 LRU页置换 最近最少使用算法 least recently used LRU 思想 置换过去最长时间没有使用的页例 可用帧数量3 引用串如下 70120304230321201701 缺页率p 12 20 60 15 分析经常使用 被认为很好无Belady异常主要问题 如何实现 需要硬件支持 为页帧确定一个排序序列 该序列按页帧上次使用的时间来定义 两种可行方案 计数器 每次内存引用 计数器增加 置换具有最小时间的页堆栈 每当引用一个页 该页从堆栈中删除放到栈顶 底部是LRU页 16 4 LRU近似页置换 思想 页表关联一个引用位 每当引用一个页时 相应页的引用位被硬件置位附加引用位算法每个页关联一8bit移位寄存器 最小值的页为LRU页二次机会算法引用位0 置换 1 给该页第二次机会 引用位清0 选择下一个FIFO页增强型二次机会算法引用位 修改位 0 0 0 1 1 0 1 1 置换在最低非空类型中所碰到的页 17 5 基于计数的页置换 思想 为每个页保留一个用以记录其引用次数的计数器最不经常使用页置换算法 leastfrequentlyused LFU 置换计数最小的页问题 一个页在进程开始时使用得多 但以后不再使用 仍然会在内存中解决方法 定期将次数寄存器右移一位最常使用页置换算法 mostfrequentlyused MFU 置换计数最大的页基于理论 具有最小次数的页可能刚刚调进来 还没有使用MFU和LFU都不常用 实现费时 且性能不是很好 18 页置换算法练习 已知页面走向为1 2 1 3 1 2 4 2 1 3 4 且开始执行时内存中没有页面 若只给该作业分配2个物理块 当采用FIFO OPT LRU页置换算法时缺页率为多少 假定现有一种置换算法 该算法淘汰页面的策略为当需要淘汰页面时 就把刚使用过的页面作为淘汰对象 试问就相同的页面走向 其缺页率又为多少 假如分配3个物理块呢 19 12131242134 FIFO9 11 81 8 OPT7 11 63 6 LRU8 11 72 7 NEW8 11 72 7 2个物理块 20 12131242134 3个物理块 FIFO5 11 45 5 OPT5 11 45 5 LRU6 11 54 5 NEW6 11 54 5 21 6 页缓冲算法 思想 保留一个空闲帧缓冲池 牺牲帧写出之前 所需要的页就从缓冲池中读到空闲内存 无需等待牺牲帧的写出扩展1 维护一个已修改页的列表 等调页设备空闲时 就选择一个修改页以写到磁盘上 这样增加了当需要选择置换时干净页的概率扩展2 保留一个空闲帧的池 记住哪些页在哪些帧中 需要置换时 先检查所需要页是否在空闲池中页缓冲算法与FIFO算法一起用于VAX VMS系统中 22 帧分配 帧的最小数量所分配的帧不能超过可用帧的数量又必须分配至少最少数量的帧分配算法 在n个进程间分配m个帧 平均分配 给每个进程m n帧比例分配 ai si Sxm 其中S si si为进程pi的虚拟内存大小 ai为进程pi可分配到的帧数以上两种分配方案不区分进程的优先级比例分配2 根据进程的优先级或进程大小和优先级的组合来分配帧 23 全局分配与局部分配全局置换 允许一个进程从所有帧集合中选择一个置换帧 不管该帧是否已分配给其他进程 即一个进程可以从另一个进程中取帧 全局分配局部置换 每个进程仅从自己的分配帧中进行选择 局部分配分析全局置换不能控制其页错误率 全局分配增加某进程所分配帧的数量局部置换会阻碍进程 局部分配分配给每个进程的帧的数量不变全局置换通常有更好的系统吞吐量 且更为常用 24 系统颠簸 了解概念 颠簸 thrashing 频繁的页调度行为 一个进程在换页上用的时间多于执行时间 工作集合模型 working setmodel 工作集窗口 working setwindow 工作集合 working set 页错误频率 page faultfrequentcy PFF 颠簸具有高的页错误频率 控制页错误频率 防止颠簸 25 操作系统样例 自学 WindowsNT 请求页面调度 上簇Solaris2 lostfree 换页 二次机会算法 26 其他考虑 预约式页面调度 同时将所需要的页一起调入内存中分析 有时性能较好 考虑成本问题页大小 如何选择页大小 考虑页表大小 大页内存利用 小页 减少碎片 页读写所需时间 大页精度 小页降低页错误数量 大页分析 没有最佳答案 趋向于大页TLB范围 增加方法 增加TLB
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 矿山作业安全规程执行
- 教育公平招生录取制度
- JavaScript 程序设计 课件 第2章-变量与数据类型
- 护理课件制作增强现实
- 2026年及未来5年市场数据中国数字电视CA系统行业发展前景预测及投资规划建议报告
- 护理质控指标与数据分析课件
- 防中暑安全知识培训考试
- 重度子痫前期护理知识测试题
- (新)初级电工证考试试题及答案
- 第九章第二节液体的压强教学设计 - -2025-2026学年人教版物理八年级下册
- 2026年企业招投标合同签订合规培训课件与履约风控
- 产品质量控制手册从原材料到成品全流程质量控制版
- 危险化学品兼容性矩阵表
- 2025年高考数学全国Ⅰ卷第18题解析几何的探究与思考说题比赛
- 2025年国防军事行业国防军事科技创新与军事战略研究报告及未来发展趋势预测
- 电炉制磷工艺与设备简介
- 【低空经济】低空飞行服务平台建设方案
- 水泥加压板隔墙施工方案
- 黄赌案件办案要点课件
- 2025年保险业新能源车险查勘定损技能测试题及答案
- 2025年贵州高考化学真题及答案
评论
0/150
提交评论