虚拟存储器管理-四川大学课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《虚拟存储器管理-四川大学课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 虚拟 存储器 管理 四川大学 课件
- 资源描述:
-
1、操作系统原理操作系统原理Operating System Principles四川大学计算机学院段 磊2014第第7章章 虚拟存储器管理虚拟存储器管理n 虚拟存储器管理为解决内存扩充问题而提出,其实现思想是将外存作为内存的扩充,作业运行不需要将作业的全部信息放入内存。n 虚拟存储器的实现基础是内存的分页式或分段式管理,采用的是进程页面或分段在内存与外存之间对换2022-6-23计算机操作系统- 第7章3/69本章目录n7.1 虚拟存储器的基本概念 n7.2 请求分页虚拟存储管理 n7.3 页面置换算法 n7.4 页面调度性能n7.5 请求分段存储管理方式 n7.6 Windows 2000/X
2、P系统存储器管理实例 2022-6-23计算机操作系统- 第7章4/69本章目录n7.1 虚拟存储器的基本概念 n虚拟存储器的概念 n虚拟存储器的特征 n7.2 请求分页虚拟存储管理 n7.3 页面置换算法 n7.4 页面调度性能n7.5 请求分段存储管理方式 n7.6 Windows 2000/XP系统存储器管理实例 2022-6-23计算机操作系统- 第7章5/69虚拟存储器的引入n常规存储管理的特征:n一次性(指全部装入)n驻留性(指驻留在内存不换出)n局部性原理n时间局部性:如循环执行n空间局部性:如顺序执行。n程序执行时,除了少部分的转移和过程调用指令外,在大多数情况下仍是顺序执行的
3、。n过程调用将会使程序的执行轨迹变化,但在一段时间内都局限在一定过程的范围内运行。n程序中存在许多循环结构,这些虽然只由少数指令构成,但是它们将多次执行。n程序中还包括许多对数据结构的处理,如对数组进行操作,它们往往都局限于很小的范围内2022-6-23计算机操作系统- 第7章6/69虚拟存储器的引入n常规存储管理的特征:n一次性(指全部装入)n驻留性(指驻留在内存不换出)n局部性原理n时间局部性:如循环执行n空间局部性:如顺序执行。n程序执行时,除了少部分的转移和过程调用指令外,在大多数情况下仍是顺序执行的。n过程调用将会使程序的执行轨迹变化,但在一段时间内都局限在一定过程的范围内运行。n程
4、序中存在许多循环结构,这些虽然只由少数指令构成,但是它们将多次执行。n程序中还包括许多对数据结构的处理,如对数组进行操作,它们往往都局限于很小的范围内。2022-6-23计算机操作系统- 第7章7/692022-6-23计算机操作系统- 第7章8/69n虚拟存储器n具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储系统。n实质:以时间换空间,但时间牺牲不大。n需要动态重定位虚拟存储器的引入2022-6-23计算机操作系统- 第7章9/69n请求分页系统n以页为单位转换n需硬件:(1)请求分页的页表机制(2)缺页中断(3)地址变换机构n需实现请求分页机制的软件(置换软件等)虚拟存
5、储器的实现方式2022-6-23计算机操作系统- 第7章10/69n请求分段系统n以段为单位转换:(1)请求分段的段表结构(2)缺段中断(3)地址变换机构n需实现请求分段机制的软件(置换软件等)虚拟存储器的实现方式2022-6-23计算机操作系统- 第7章11/697.1.2 虚拟存储器的特征n离散性n部分装入n多次性n局部装入,多次装入n对换性n虚拟性2022-6-23计算机操作系统- 第7章12/69本章目录n7.1 虚拟存储器的基本概念 n7.2 请求分页虚拟存储管理n请求分页的硬件支持n分页虚拟存储器管理实施中的策略问题 n7.3 页面置换算法 n7.4 页面调度性能n7.5 请求分段
6、存储管理方式 n7.6 Windows 2000/XP系统存储器管理实例 2022-6-23计算机操作系统- 第7章13/697.2.1 请求分页中的硬件支持n页表机制n缺页中断机构n地址变换机构2022-6-23计算机操作系统- 第7章14/69n页表机制请求分页中的硬件支持页号 物理块号状态位P访问字段A修改位M外存地址状态位P: 用于指示该页是否已调入内存,供程序访问时参考。访问字段A: 用于记录本页在一段时间内被访问的次数,或记录本页最近已有多长时间未被访问,供选择换出页面时参考。修改位M: 表示该页在调入内存后是否被修改过,供置换页面时参考。外存地址: 用于指出该页在外存上的地址,通
7、常是物理块号,供调入该页时参考。2022-6-23计算机操作系统- 第7章15/69n缺页中断机构n当所要访问的页面不在内存时,产生缺页中断,请求OS将所缺之页调入内存。n与其他中断的区别n可在指令执行期间产生n一条指令在执行期间,可能产生多次缺页中断。(如图7.3)请求分页中的硬件支持2022-6-23计算机操作系统- 第7章16/69地地址址变变换换过过程程增加增加中断处理中断处理2022-6-23计算机操作系统- 第7章17/697.2.2 分页虚拟存储器管理实施中的策略问题 n最小物理块数n保证进程正常运行所需的最小物理块数n不同的作业要求不同n如:允许间接寻址:则至少要求3个物理块。
8、Mov A, B 2022-6-23计算机操作系统- 第7章18/69内存分配策略和分配算法固定与可变: 指为进程分配的物理块数是固定的还是变化的局部与全局: 指因内存不够需要置换时,换出的页面是该进程的页面,还是内存中所有进程的某一页面。2022-6-23计算机操作系统- 第7章19/69n页面分配和置换策略n固定分配局部置换n缺点:难以确定固定分配的页数.(少:置换率高 多:浪费)n可变分配全局置换n可变分配局部置换n根据进程的缺页率进行页面数调整,进程之间相互不会影响。内存分配策略和分配算法2022-6-23计算机操作系统- 第7章20/69n分配算法n平均分配算法n按比例分配算法n考虑
9、优先权的分配算法内存分配策略和分配算法mssbiiniiss12022-6-23计算机操作系统- 第7章21/69调页策略 n1.调入时机:n预调:(根据空间局部性)n目前:成功率50n请求调:较费系统开销n各有优劣n2从何处调页:n对换区:修改过的页被换出时入对换区, 快n文件区:稍慢n对共享页,应判断其是否在内存区。n3.页面调入过程2022-6-23计算机操作系统- 第7章22/69页页面面调调入入过过程程2022-6-23计算机操作系统- 第7章23/69本章目录n7.1 虚拟存储器的基本概念 n7.2 请求分页虚拟存储管理n7.3 页面置换算法 n先进先出(FIFO)页面置换算法 n
10、最佳(optimal)页面置换算法 n最近最久未使用(LRU)页面置换算法 n时钟(clock)置换算法 n7.4 页面调度性能n7.5 请求分段存储管理方式 n7.6 Windows 2000/XP系统存储器管理实例 2022-6-23计算机操作系统- 第7章24/69n理想淘汰算法最佳页面算法(OPT)n淘汰以后不再需要的或最远的将来才会用到的页面n先进先出页面淘汰算法(FIFO)n淘汰在内存中驻留时间最长的页并淘汰n最近最久未使用页面淘汰算法(LRU)n淘汰最后一次访问时间距离当前时间最长的一页n即淘汰没有使用的时间最长的页nClock置换算法LRU近似算法n最不经常使用(LFU)n淘汰
11、访问次数最少的页面主要置换算法2022-6-23计算机操作系统- 第7章25/69举例n在一个请求分页系统中,假设一个作业的页面走向为: 4 3 2 1 4 3 5 4 3 2 1 5n当分配给该作业的物理块数M分别是3和4时,请计算不同页面置换算法下,访问过程中所发生的缺页次数和缺页率。2022-6-23计算机操作系统- 第7章26/69n思想:n选择的被淘汰页面,将是以后永不使用的,或许是在最长(未来)时间内不再被访问的页面。n效果:n通常可保证获得最低的缺页率。n评价:n由于人们无法预知一个进程在内存的若干个页面中,哪一个页面是未来最长时间内不再被访问的,因而该算法无法实现n可以利用该算
12、法去评价其它算法页面置换算法-OPT2022-6-23计算机操作系统- 第7章27/69举例n采用OPT淘汰算法,当M3时 512345341234P121110987654321时刻FM4+3+4+2+-34+1+-34+1-341-345+-34+534-53-452+-4+51+-4+5-14由表可以算出缺页中断次数由表可以算出缺页中断次数F=7,而缺页率:,而缺页率:712=58%。2022-6-23计算机操作系统- 第7章28/69n采用OPT淘汰算法,当M4时512345341234P121110987654321时刻FM4+3+4+2+34+1+-234+1-2341-2345+
13、-234+5234-523-452-3451+-34+5-134由表可以算出缺页中断次数由表可以算出缺页中断次数F=6,而缺页率:,而缺页率:612=50%。举例2022-6-23计算机操作系统- 第7章29/69n思想:n总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。n效果:n实现简单。n评价:n与进程实际运行的规律不相适应,因为在进程中,有些页面经常被访问,该算法并不能保证这些页面不被淘汰。 页面置换算法-FIFO2022-6-23计算机操作系统- 第7章30/69举例n如果采用FIFO替换算法,当M3时 512345341234P121110987654321时刻
14、FM4+3+4+2+34-+1+23-+4+12-+3+41-+5+34-+534-534-2+53-+1+25-+125-由表可以算出缺页中断次数由表可以算出缺页中断次数F=9,而缺页率:,而缺页率:912=75%。2022-6-23计算机操作系统- 第7章31/69举例n采用FIFO替换算法,当M4时 512345341234P121110987654321时刻FM4+3+4+2+34+1+234-+1234-1234-5+123-+4+512-+3+451-+2+345-+1+234-+5+123-+由表可以算出缺页中断次数由表可以算出缺页中断次数F=10,而缺页率:,而缺页率:1012
15、=83%。2022-6-23计算机操作系统- 第7章32/69n思想:n根据页面调入内存后的使用情况进行决策的。选择最近最久未使用的页面予以淘汰。n效果:n较好。n评价:n需要有较多的硬件支持(寄存器、栈)。页面置换算法-LRU2022-6-23计算机操作系统- 第7章33/69举例n当M3时,采用LRU替换算法: 512345341234P121110987654321时刻FM4+3+4+2+34-+1+23-+4+12-+3+41-+5+34-+453-345-2+34-+1+23-+5+12-+算出缺页中断次数算出缺页中断次数F=10,缺页率,缺页率f =1012=83。2022-6-2
16、3计算机操作系统- 第7章34/69举例n当M4时,采用LRU替换算法: 512345341234P121110987654321时刻FM4+3+4+2+34+1+234-+4123-3412-5+341-+4531-3451-2+345-+1+234-+5+123-+由表可以算出缺页中断次数由表可以算出缺页中断次数F=8,而缺页率:,而缺页率:812=67%。2022-6-23计算机操作系统- 第7章35/69结论总结:n 通过以上缺页次数和缺页率的分析计算,可以看出:n对于LRU、OPT算法,增加物理块数,不会增加缺页次数。n对于FIFO算法,增加物理块数,不一定能减少缺页次数。nOPT算
17、法仅是一种理论算法,不作为实用算法,仅用于算法的比较和评价。2022-6-23计算机操作系统- 第7章36/69结论讨论:n 计算缺页次数和缺页率时,要注意初始时刻所有物理块为空。n 调入页面时,不需要页面替换,但是需要引起缺页中断。 2022-6-23计算机操作系统- 第7章37/69页面置换算法-Clock/NRUn思想:n为每页设置一位访问位,再将内存中的所有页面都通过链接指针链接成一个循环队列。n当某页被访问时,其访问位被置1。n置换算法在选择一页淘汰时,只需检查页的访问位。如果是0,就选择该页换出;若为1,则重新将它置0,暂不换出,而给该页第二次驻留内存的机会,再按照FIFO算法检查
展开阅读全文