操作系统第四章课件第四章存储器管理

上传人:cl****1 文档编号:568772815 上传时间:2024-07-26 格式:PPT 页数:192 大小:2.74MB
返回 下载 相关 举报
操作系统第四章课件第四章存储器管理_第1页
第1页 / 共192页
操作系统第四章课件第四章存储器管理_第2页
第2页 / 共192页
操作系统第四章课件第四章存储器管理_第3页
第3页 / 共192页
操作系统第四章课件第四章存储器管理_第4页
第4页 / 共192页
操作系统第四章课件第四章存储器管理_第5页
第5页 / 共192页
点击查看更多>>
资源描述

《操作系统第四章课件第四章存储器管理》由会员分享,可在线阅读,更多相关《操作系统第四章课件第四章存储器管理(192页珍藏版)》请在金锄头文库上搜索。

1、Operating SystemOperating System宪担援汐灿富镊禽良碉伏鸽耐泪闪语操哎郑匠恩凄氛鸽件皑肚疹晾纳酮洛操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/20241Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q重点重点v理解理解重定位的基本概念重定位的基本概念 v掌握掌握动态分区分配方式动态分区分配方式 v掌握理解掌握理解分页和分段存储管理方式分页和分段存储管理方式 v理解理解虚拟存储器的基本概念虚拟存储器的基本概念 v掌握掌握请求分页系统的基本原理请求

2、分页系统的基本原理 q难点难点v动态分区分配动态分区分配算法算法 v分页和分段地址转换分页和分段地址转换v请求分页系统的请求分页系统的地址转换及页面置换算法地址转换及页面置换算法冕肆喂梅停饥堆谐溃每蓟箱丙拦漆储荫浇亩衷归倒豆啼糖兴梢酱渣缄叶甩操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/20242Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q知识点知识点v重定位的基本概念重定位的基本概念 v动态分区分配方式及分配算法、分区保护动态分区分配方式及分配算法、分区保护v分页存储管

3、理及地址变换、分段存储管理及地分页存储管理及地址变换、分段存储管理及地址变换,信息共享和保护址变换,信息共享和保护v虚拟存储器的基本概念、特征,页面置换技术虚拟存储器的基本概念、特征,页面置换技术 v请求分页系统,页表机制、地址变换及页面置请求分页系统,页表机制、地址变换及页面置换算法换算法 战毒兑瞬铲吃笛抨衡女肄坷漠坑园恕畅津雌懦疼酷岭称酪暖苏泛皂悉弹乎操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/20243Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q存储器是计算机系统

4、重要的组成部分存储器是计算机系统重要的组成部分q虽然存储器的容量不断扩大,但仍不能满虽然存储器的容量不断扩大,但仍不能满足要求,因此存储器管理是操作系统的重足要求,因此存储器管理是操作系统的重要工作要工作萧絮诫抒维虽粥淬郁歧千抢酌湾笺溅掸肪池褐话权膛垫舟律丙卿晃扎兵捆操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/20244Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q存储器包括内存(主存)和外存(磁盘)存储器包括内存(主存)和外存(磁盘)v存储器的功能是保存数据,存储器的发

5、展方向存储器的功能是保存数据,存储器的发展方向是高速、大容量和小体积。是高速、大容量和小体积。内存在访问速度方面的发展:内存在访问速度方面的发展:DRAM、SDRAM、SRAM等;等;硬盘技术在大容量方面的发展:接口标准、硬盘技术在大容量方面的发展:接口标准、存储密度等;存储密度等;q主存储器管理技术分为两大类主存储器管理技术分为两大类v实存储器管理实存储器管理v虚拟存储器管理虚拟存储器管理憨陇粪黍盗栏烩藻猖磁捎家鸳旨刃仓就亮讥哥肄袄跌状驭篆彬轰矽但兔狠操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/20245Operating SystemOperating

6、 System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q存储器的物理组织、多级存储器存储器的物理组织、多级存储器v存储组织是指在存储技术和存储组织是指在存储技术和CPU寻址技术许可的寻址技术许可的范围内组织合理的存储结构。范围内组织合理的存储结构。其依据是访问速度匹配关系、容量要求和价其依据是访问速度匹配关系、容量要求和价格。格。“寄存器寄存器-内存内存-外存外存”结构结构“寄存器寄存器-缓存缓存-内存内存-外存外存”结构;结构;v微机中的存储层次组织:微机中的存储层次组织:访问速度越慢,容量越大,价格越便宜;访问速度越慢,容量越大,价格越便宜;最佳状态应是各层次的存

7、储器都处于均衡的最佳状态应是各层次的存储器都处于均衡的繁忙状态(如:缓存命中率正好使主存读写保繁忙状态(如:缓存命中率正好使主存读写保持繁忙);持繁忙);火屿赫馈下琵琵奎插吭坯南镐颇元跋棵被辈樟墅踞胶冯暖炳揍茨狡窃祝赤操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/20246Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q快速缓存:快速缓存:vData CachevTLB(Translation Lookaside Buffer)q内存:内存:DRAM, SDRAM等;等;q外

8、存:软盘、硬盘、光盘、磁带等;外存:软盘、硬盘、光盘、磁带等;饯前斋泽悉又骑跌抨验菠泥哼洲瞧拒俞浇耍咽拱跟延邢惯暗肪冉坯雍逗慌操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/20247Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q主存储器管理功能主存储器管理功能v存储分配和回收:分配和回收算法及相应的数据结构。存储分配和回收:分配和回收算法及相应的数据结构。v地址变换和重定位:地址变换和重定位:可执行文件生成中的链接技术可执行文件生成中的链接技术程序加载程序加载(装入装入)时

9、的重定位技术时的重定位技术进程运行时硬件和软件的地址变换技术和机构进程运行时硬件和软件的地址变换技术和机构v存储共享和保护:存储共享和保护:代码和数据共享代码和数据共享地址空间访问权限(读、写、执行)地址空间访问权限(读、写、执行)v存储器扩充:存储器的逻辑组织和物理组织;存储器扩充:存储器的逻辑组织和物理组织;由应用程序控制:覆盖;由应用程序控制:覆盖;由由OS控制:交换(整个进程空间),虚拟存储的请求调入和控制:交换(整个进程空间),虚拟存储的请求调入和预调入(部分进程空间)预调入(部分进程空间)斯笋蔑盒张鹏姓唁烟励慨林播翔底畸宇鹤饮扒姥混五名潮菱衣坝鞋鲜蚕韭操作系统第四章课件-第四章存储

10、器管理操作系统第四章课件-第四章存储器管理7/26/20248Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q程序的装入和链接程序的装入和链接 q连续分配方式连续分配方式 q基本分页存储管理基本分页存储管理 q基本分段存储管理基本分段存储管理q虚拟存储器的基本概念虚拟存储器的基本概念q请求分页存储管理方式请求分页存储管理方式q页面置换算法页面置换算法q请求分段存储管理方式请求分段存储管理方式淳愚宾埔返轴诬境大古孔阐鸡义初慎燃授煤掠巳罚楔垮殿瓣疗揭棍烬憋良操作系统第四章课件-第四章存储器管理操作系统第四章课件-第

11、四章存储器管理7/26/20249Operating SystemOperating System程序的装入和链接程序的装入和链接程序的装入和链接程序的装入和链接q程序的装入程序的装入q程序的链接程序的链接夫淄魄哥敬典缅抛篆徐吨请苗钒眶住荷祁扣闪灾钮测葛践腋极羡徊绊攻疚操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202410Operating SystemOperating System程序的装入程序的装入程序的装入程序的装入q多道程序环境下,程序要运行必须为之创建进程,多道程序环境下,程序要运行必须为之创建进程,而创建进程的第一件事就是分配内存而创建进程

12、的第一件事就是分配内存q源程序要运行通常经过源程序要运行通常经过编译(编译(compile)链接链接(link)装入装入(load)等几个步骤等几个步骤宪砌秒燃伞寥卵少耿梧辊安绿摆司琶卧户蟹贡鞍啸谋宏呀蹋跺恤扰沥巍染操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202411Operating SystemOperating System4.1 程序的装入和链接程序的装入和链接 图 4-1 对用户程序的处理步骤 焰脐喜衅诈砰宛晓并你五吼震浙邯厂剿爆裹烩牵锯钒撒歼语始邯勉寅躬碉操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/20

13、2412Operating SystemOperating System4.1.1 程序的装入程序的装入1. 绝对装入方式绝对装入方式(Absolute Loading Mode) 2. 可重定位装入方式可重定位装入方式(Relocation Loading Mode) 3. 动态运行时装入方式动态运行时装入方式(Dynamic Run-time Loading) 巴梁朽唯添翠菊书梗控阜坤幅捎戳孪佑虽汤摧造达队网暴檀淘乳财豺钡帜操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202413Operating SystemOperating System程序的装入

14、程序的装入程序的装入程序的装入q绝对装入方式绝对装入方式(Absolute Loading Mode) v事先事先确定确定了程序将了程序将驻留在内存驻留在内存的什么的什么位置位置,即,即在内存中的在内存中的绝对地址绝对地址v装入模块被装入内存后,由于程序中的逻辑地装入模块被装入内存后,由于程序中的逻辑地址与实际内存地址完全相同,故不需对程序和址与实际内存地址完全相同,故不需对程序和数据的地址进行修改数据的地址进行修改v绝对地址的产生绝对地址的产生程序员直接赋予。不仅要求程序员熟悉内存程序员直接赋予。不仅要求程序员熟悉内存使用情况,而且一旦程序或数据被修改后,使用情况,而且一旦程序或数据被修改后

15、,可能要改变程序中的所有地址。通常在程序可能要改变程序中的所有地址。通常在程序中采用符号地址,在编译或汇编时,再将符中采用符号地址,在编译或汇编时,再将符号地址转换为绝对地址。号地址转换为绝对地址。编译或汇编时产生编译或汇编时产生难养姚役谬供蒲枉段带伎蔓嘛决扩竭味驳下弗蝶拾命垢叹偶音撇柴陇帖非操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202414Operating SystemOperating System程序的装入程序的装入程序的装入程序的装入q可重定位装入方式可重定位装入方式(Relocation Loading Mode) v绝对装入方式只能将目

16、标模块装入到内存中事绝对装入方式只能将目标模块装入到内存中事先指定的位置先指定的位置v在多道程序环境下,不可能预知目标模块放在在多道程序环境下,不可能预知目标模块放在内存中的地址,因此绝对装入方式不适合在多内存中的地址,因此绝对装入方式不适合在多道环境下使用道环境下使用v程序中程序中目标模块的地址通常从目标模块的地址通常从0开始开始,其他地,其他地址都是相对于址都是相对于0计算计算相对地址相对地址v把在装入时对目标程序中指令和数据的地址修把在装入时对目标程序中指令和数据的地址修改过程称为改过程称为重定位重定位,又因为,又因为地址变换通常是在地址变换通常是在装入时一次完成装入时一次完成的,以后不

17、再改变,故称为的,以后不再改变,故称为静静态重定位态重定位勺剂乱惦骇狭始孪谦帆钮象黍恩圆奖胃啮述铣风膘炊拈窥仑烯屹鲜俗康莹操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202415Operating SystemOperating System程序的装入程序的装入程序的装入程序的装入作业装入内存时的情况作业装入内存时的情况 缺点:不断的分配和回收,造成内存中小空闲块很多,总缺点:不断的分配和回收,造成内存中小空闲块很多,总空闲空间量够,但分配不了空闲空间量够,但分配不了办法:紧凑(移动),但该装入方法不支持办法:紧凑(移动),但该装入方法不支持哇侨险厌箭针褒

18、鲜侥批顽苦亏吹沟喧寅参色钻撮浑定庆史哈所君辊瘪鳞陋操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202416Operating SystemOperating SystemLOAD 1,25003655000250010000作业地址空间作业地址空间36510000110001250015000内存空间内存空间LOAD 1,1250036520000210002250025000内存空间内存空间LOAD 1,22500将程序加载到将程序加载到10000?程序的装入程序的装入程序的装入程序的装入将程序移动到将程序移动到20000?芬耀溯鸿腻乳椎图带抚糯贰混考绩

19、日采矾植跺豫窟的砌感东虐腰今氧裹律操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202417Operating SystemOperating System程序的装入程序的装入程序的装入程序的装入q动态运行时装入方式动态运行时装入方式(Denamic Run-time Loading) v可重定位方式不允许程序运行时可重定位方式不允许程序运行时在内存中移在内存中移动位置动位置v动态运行时的装入程序,是在把装入模块装动态运行时的装入程序,是在把装入模块装入内存后,并不立即把装入模块中的相对地入内存后,并不立即把装入模块中的相对地址转换为绝对地址,而是把这种址转

20、换为绝对地址,而是把这种地址转换推地址转换推迟到程序真正要迟到程序真正要执行执行时才进行时才进行。因此,。因此,装入装入内存后的所有地址都内存后的所有地址都仍是相对地址仍是相对地址洱驭越戏裤邀沦沤骄掐组壶醛虹伯肯急缺兑勇笼三磁能炬怒蔡绰听嘛堡陡操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202418Operating SystemOperating System程序的装入和链接程序的装入和链接程序的装入和链接程序的装入和链接q程序的装入程序的装入q程序的链接程序的链接剂杉致奠来毗富训欺坷确榴埠卤拨记忻疏偷盛蠕恬垣瞪斗荷署扫噪搞欲兔操作系统第四章课件-第四章

21、存储器管理操作系统第四章课件-第四章存储器管理7/26/202419Operating SystemOperating System4.1 程序的装入和链接程序的装入和链接 图 4-1 对用户程序的处理步骤 聚杨银滨早松醋肄枫盲煞狭睁士悍氢焰略眺搏表畸也释徘士枉铜蚁欲轰舌操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202420Operating SystemOperating System4.1.2 程序的链接程序的链接 1. 静态链接方式静态链接方式(Static Linking) 2. 装入时动态链接装入时动态链接(Load-time Dynamic

22、Linking) 3. 运行时动态链接运行时动态链接(Run-time Dynamic Linking) 洱桥纯趾拭钻枕苗撼橡坪著卓说豹铱囤恤裙敬虑事憎筏爱甩针呆稗胯涉拐操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202421Operating SystemOperating System程序的链接程序的链接程序的链接程序的链接q静态链接方式静态链接方式(Static Linking) v在程序在程序运行前运行前,先将各目标模块及所需的库函,先将各目标模块及所需的库函数链接成一个完整的装配模块,以后不再拆开数链接成一个完整的装配模块,以后不再拆开v在将这几

23、个目标模块装配成一个装入模块时,在将这几个目标模块装配成一个装入模块时,须解决以下两个问题须解决以下两个问题 对相对地址进行修改对相对地址进行修改 变换外部调用符号变换外部调用符号迎凤颧侣置汪抛整矗邦萧忘妥漾做摧卓株战些析录存评夜球睁啤看搐秆尽操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202422Operating SystemOperating System程序的链接程序的链接程序的链接程序的链接模块模块 ACALL B;Return;0L1模块模块 BCALL C;Return;0M1模块模块 CReturn;0N1(a) 目标模块目标模块( (外存

24、外存) )装入前装入前链接修链接修改地址改地址0模块模块 AJSR“L”Return;L1模块模块 BJSR“LM”Return;LLM1LMLMN1模块模块 CReturn;(b) 装入模块装入模块(外存)(外存)憨硬券表给蝉浪隐毖冲扛栓消夸搁腋盘保衙弯硅散亦区精颁鳞伞宽垒尉仁操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202423Operating SystemOperating System程序的链接程序的链接程序的链接程序的链接q装入时动态链接装入时动态链接(Loadtime Dynamic Linking) v将用户的源程序编译后所得的一组目标模

25、块将用户的源程序编译后所得的一组目标模块在装入内存时采用在装入内存时采用边装入边链接边装入边链接的方式的方式便于修改和更新便于修改和更新 便于实现对目标模块的共享便于实现对目标模块的共享 搽晋里颠夏内揉斧克京萎续绚桑吱主荡咋杰难至咋储冷羌航忠索秩磁番算操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202424Operating SystemOperating System模块模块 ACALL B;Return;0L1模块模块 BCALL C;Return;0M1模块模块 CReturn;0N1外存外存0模块模块 AJSR“L”Return;L1模块模块 BJ

26、SR“LM”Return;LLM1LMLMN1模块模块 CReturn;内存内存程序的链接程序的链接程序的链接程序的链接装入时装入时链接修链接修改地址改地址处嗽沧仅衔迪醒遇刮畴招滨浅些竟铭躯僻塔役陡渐袄俄昨设舆馁彪竹畏叛操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202425Operating SystemOperating System程序的链接程序的链接程序的链接程序的链接q运行时动态链接运行时动态链接(Run-time Dynamic Linking) v应用程序在每次运行的模块可能不相同应用程序在每次运行的模块可能不相同v运行时动态链接方式将对某些

27、模块的运行时动态链接方式将对某些模块的链接推链接推迟到迟到执行执行时才进行时才进行,即在执行过程中,当,即在执行过程中,当发现一个被调用模块发现一个被调用模块尚未装入内存尚未装入内存时,立时,立即由即由OS去找到该模块并将之装入内存,去找到该模块并将之装入内存, 把把它链接到调用者模块上它链接到调用者模块上v凡在执行过程中未被用到的目标模块,都不凡在执行过程中未被用到的目标模块,都不会被调入内存和被链接到装入模块上,这会被调入内存和被链接到装入模块上,这样不仅可样不仅可加快程序的装入过程加快程序的装入过程,而且可,而且可节节省大量的内存空间省大量的内存空间雷缕桶乡震等歌蓄慎吝修舟模出沫硷啥捎拧

28、浊难惊抗痰燃秃耍娱瑞毅瞅轨操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202426Operating SystemOperating System模块模块 ACALL B;Return;0L1模块模块 BCALL C;Return;0M1模块模块 CReturn;0N1外存外存0模块模块 AJSR“L”Return;L1内存内存执行时执行时链接修链接修改地址改地址撞责猪垢赏舌伏庸薄词儒缠满濒薄吟添差辆野似灯憋隶葬需椽院袋竣狭港操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202427Operating SystemOpe

29、rating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q程序的装入和链接程序的装入和链接 q连续分配方式连续分配方式 q基本分页存储管理基本分页存储管理 q基本分段存储管理基本分段存储管理q虚拟存储器的基本概念虚拟存储器的基本概念q请求分页存储管理方式请求分页存储管理方式q页面置换算法页面置换算法q请求分段存储管理方式请求分段存储管理方式篓述钢晓呜施雏式付蚊切筏推寥写俐盼粕牧苹腻贺蹭限汰言垢厅榆俄绰分操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202428Operating SystemOperating System

30、连续分配方式连续分配方式连续分配方式连续分配方式q单一连续分配单一连续分配q固定分区分配固定分区分配q动态分区分配动态分区分配q可重定位分区分配可重定位分区分配q对换(对换(SwappingSwapping)粪炮糠像释羊官注汝锑掘图钨朋剁栋裴滥凡何近娱鲤袒莎咐市房崭央迢琐操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202429Operating SystemOperating System单一连续分配单一连续分配单一连续分配单一连续分配q连续分配方式为连续分配方式为一个用户一个用户程序分配一个连续的程序分配一个连续的内存空间内存空间q单一连续分配单一连续分

31、配是最简单的一种存储管理方式,是最简单的一种存储管理方式,但只能用于但只能用于单用户、单任务单用户、单任务的操作系统中的操作系统中q把内存分为把内存分为v系统区:系统区:OS使用,通常放在内存低址部分使用,通常放在内存低址部分v用户区:用户区:用户可使用的全部内存空间用户可使用的全部内存空间q存储器保护机构不健全,易造成系统破坏存储器保护机构不健全,易造成系统破坏q优点:易于管理优点:易于管理q缺点:对要求内存空间少的程序,造成内存浪缺点:对要求内存空间少的程序,造成内存浪费;程序全部装入,很少使用的程序部分也占费;程序全部装入,很少使用的程序部分也占用内存用内存偶牺春卉铡督或构简淮骏第津遭岛

32、据赫仟勉沉艾结幼描融看扦廖弹矢阶泥操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202430Operating SystemOperating System单一连续分配单一连续分配单一连续分配单一连续分配用户程序用户程序位于位于RAM中的中的操作系统操作系统0xFFF.0位于位于RAM中的中的操作系统操作系统用户程序用户程序0ROM中的中的设备驱动程序设备驱动程序用户程序用户程序位于位于RAM中的中的操作系统操作系统0单一连续区存储管理单一连续区存储管理匙剥还殷痢鸟逸狭祈竖蒂骋绣捂分决而滩涛暑颊柜询吮绞臃腥感梦氛矛梭操作系统第四章课件-第四章存储器管理操作系

33、统第四章课件-第四章存储器管理7/26/202431Operating SystemOperating System连续分配方式连续分配方式连续分配方式连续分配方式q单一连续分配单一连续分配q固定分区分配固定分区分配q动态分区分配动态分区分配q可重定位分区分配可重定位分区分配q对换(对换(SwappingSwapping)坚颊纲焉牡狡坐峪痈梗蓬磨茅流酵鲜稽落陌长缄惺峨晋决运蔬鞠泛搏恩偿操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202432Operating SystemOperating System固定分区分配固定分区分配固定分区分配固定分区分配q最简

34、单的可运行最简单的可运行多道程序多道程序的存储管理方式的存储管理方式q内存用户空间划分为若干个内存用户空间划分为若干个固定大小的区域固定大小的区域,每个分区中只装入每个分区中只装入一道一道作业作业q划分分区的方法划分分区的方法 v分区大小相等分区大小相等:即使所有的内存分区大小相:即使所有的内存分区大小相等等太大:浪费太大:浪费太小:不够用太小:不够用 v分区大小不等分区大小不等:划分为多个大、中、小搭配:划分为多个大、中、小搭配的分区的分区根据程序大小决定所使用的分区根据程序大小决定所使用的分区 大班在大班在大教室、小班在小教室大教室、小班在小教室市卞画乌销饭烫丸堪逞赢卜旦掷拆兹绒泵歧挛殃淋

35、寻梧吏也摸行岭瘸渡气操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202433Operating SystemOperating Systemq内存分配内存分配 v分区的信息根据分区使用表管理分区的信息根据分区使用表管理固定分区分配固定分区分配固定分区分配固定分区分配2020v使用界地址寄存器使用界地址寄存器v采用静态重定位采用静态重定位问题:并发进程数受分区个数的制约!问题:并发进程数受分区个数的制约!出现:有内存却不能运行程序或大进程无法运行!出现:有内存却不能运行程序或大进程无法运行!甄搔撩杠粟施躺葵蓟园组舟乙砧逗既瓜拴匿亥硕皿姐稀寇郁呐债希孵了萌操作

36、系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202434Operating SystemOperating System连续分配方式连续分配方式连续分配方式连续分配方式q单一连续分配单一连续分配q固定分区分配固定分区分配q动态分区分配动态分区分配q可重定位分区分配可重定位分区分配q对换(对换(SwappingSwapping)留础疟冷冻涕唉意拖剖评污鳃鸥滁幽碎盎死啦牟煌召矛滥具据陋聪恐莎沙操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202435Operating SystemOperating System动态分区分配动态

37、分区分配动态分区分配动态分区分配q根据进程的实际根据进程的实际需要,动态地为需要,动态地为之分配内存空间之分配内存空间q分配中数据结构分配中数据结构 v空闲分区表空闲分区表 记录每个空闲记录每个空闲分区的情况分区的情况v空闲分区链空闲分区链 实现对空闲分实现对空闲分区的分配和链区的分配和链接接几叶谓沦彬描缉化枉疽咳羽朴枷穆榷艇屁颜邯坊肄圆锈胎笛雏濒荆蚀做赤操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202436Operating SystemOperating System动态分区分配动态分区分配动态分区分配动态分区分配q分区分配算法分区分配算法 v首次适

38、应算法首次适应算法FF v循环首次适应算法循环首次适应算法v最佳适应算法最佳适应算法v最差适应算法最差适应算法垢案牡疾使浆品彰藤瓮俯惦编晚婴吹凡擂吨沸旺扬撒将尘门焚炉炊革孟架操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202437Operating SystemOperating System动态分区分配动态分区分配动态分区分配动态分区分配q分区分配算法分区分配算法 v首次适应算法首次适应算法FF 空闲分区链以空闲分区链以地址递增顺序地址递增顺序链接链接分配时从分配时从链首开始查找链首开始查找,找到一个大小可满足的空,找到一个大小可满足的空闲分区,划出一块

39、给请求者闲分区,划出一块给请求者优点:简单;优先利用低地址空闲区,保留高地址优点:简单;优先利用低地址空闲区,保留高地址大空闲区大空闲区缺点:会造成在低地址部分很多难以利用的小空闲缺点:会造成在低地址部分很多难以利用的小空闲分区,查找效率低分区,查找效率低v循环首次适应算法循环首次适应算法每次分配时每次分配时从上一次找到从上一次找到空闲分区的空闲分区的下一个空闲区下一个空闲区开始查找开始查找优点:减少查找空闲分区开销,空闲分区分布更均优点:减少查找空闲分区开销,空闲分区分布更均匀匀缺点:缺乏大的空闲区缺点:缺乏大的空闲区泥世柏叠炎堪勤皑掇铬侩磕镊寅于其番迅吼比走沽砾磺删屈爬朵缓楔坛炊操作系统第

40、四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202438Operating SystemOperating System动态分区分配动态分区分配动态分区分配动态分区分配v最佳适应算法最佳适应算法空闲区按容量由小到大排序空闲区按容量由小到大排序每次分配时,把能满足要求、又是每次分配时,把能满足要求、又是最小最小的分区分的分区分配给作业配给作业优点:不缺乏大的空闲区优点:不缺乏大的空闲区缺点:会在存储器中留直许多难以利用的小分区缺点:会在存储器中留直许多难以利用的小分区“零头(或碎片)零头(或碎片)”;查找效率低;查找效率低v最差适应算法最差适应算法空闲区按容量由大到小

41、排序空闲区按容量由大到小排序每次分配时,把能满足要求、又是每次分配时,把能满足要求、又是最大最大的分区分的分区分配给作业配给作业优点:剩余的空间最大化,不出现太小的优点:剩余的空间最大化,不出现太小的“零头零头”缺点:缺乏大的空闲区缺点:缺乏大的空闲区首次适应被认为最好、最快,其次是循环,最佳最差首次适应被认为最好、最快,其次是循环,最佳最差(每次分配后剩下小碎片,难再分,不得不经常压缩(每次分配后剩下小碎片,难再分,不得不经常压缩内存,反而浪费内存,反而浪费CPU)茹琢驭唁碟未青盂凝致藩腺躁趟燥坷沸侠姚雕要劝解仕抽渺筐裂阅颅九芯操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存

42、储器管理7/26/202439Operating SystemOperating System动态分区分配动态分区分配动态分区分配动态分区分配q分区分配操作分区分配操作 v分配内存分配内存 从头开始查表从头开始查表检索完否?检索完否?m.sizeu.size?m.sizeu.sizesize?从该分区中划出从该分区中划出u.size大小的分区大小的分区将该分区分配给请求者修将该分区分配给请求者修改有关数据结构改有关数据结构返回返回返回返回继续检索下一个表项继续检索下一个表项将该分区从链中移出将该分区从链中移出YNNYYN解决碎解决碎片问题片问题赡辊栽饲狰驶恳鳃痕枯巾瘦时融啮搂琉表骄娱毁捣瓦栗椭

43、帆填匡套瑰渊预操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202440Operating SystemOperating System动态分区分配动态分区分配动态分区分配动态分区分配q分区分配操作分区分配操作 v回收内存回收内存v进程运行结束释放内存时,系统根据回收区的进程运行结束释放内存时,系统根据回收区的首地址,把它插入到空闲链表中。根据回收区首地址,把它插入到空闲链表中。根据回收区的位置,有四种情况需处理:的位置,有四种情况需处理:回收区与插入点的回收区与插入点的前一个前一个空闲分区相邻接空闲分区相邻接回收区与插入点的回收区与插入点的后一个后一个空闲

44、分区相邻接空闲分区相邻接 回收区同时与插入点的回收区同时与插入点的前、后前、后两个分区相邻两个分区相邻接接回收区不与任何空闲区邻接回收区不与任何空闲区邻接董月鸦矾拦透咕董桔椭配柏透批玖胺傻饰作红蠢柱业造波皿捂乘纯韶头熄操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202441Operating SystemOperating System动态分区分配动态分区分配动态分区分配动态分区分配空闲区空闲区回收区回收区回收区回收区空闲区空闲区空闲区空闲区回收区回收区空闲区空闲区回收区回收区情况情况1 1情况情况2 2情况情况3 3情况情况4 4合龋舍得进碌通萄界踊循明

45、档具结搀鹏四润睹窄棚或踏痊过窖宫搬尤纪边操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202442Operating SystemOperating System2) 回收内存 回收区F1F2回收区F2回收区F1回收区回收区班姿午芯汝遭匹子商颊百佛脂住丙穗渠藉猪婶幕捐撂抖还凉诱盖卯妮响贿操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202443Operating SystemOperating System动态分区分配动态分区分配动态分区分配动态分区分配q碎片问题碎片问题v经过一段时间的分配回收后,内存中存在很多经过一段时

46、间的分配回收后,内存中存在很多很小的空闲块。它们每一个都很小,不足以满很小的空闲块。它们每一个都很小,不足以满足分配要求;但其总和满足分配要求。这些空足分配要求;但其总和满足分配要求。这些空闲块被称为碎片闲块被称为碎片v造成存储资源的浪费造成存储资源的浪费q碎片问题的解决碎片问题的解决v紧凑技术:通过在内存移动程序,将所有小的紧凑技术:通过在内存移动程序,将所有小的空闲区域合并为大的空闲区域空闲区域合并为大的空闲区域 (紧缩技术,紧致技术,浮动技术,搬家技术)(紧缩技术,紧致技术,浮动技术,搬家技术)v问题:开销大;移动时机问题:开销大;移动时机仑言秒腮挖藉松札武御土聚脸存伯训拴萎洋砾辗惊眠逗

47、斯壮耕棘勾醇梭屹操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202444Operating SystemOperating System动态分区分配动态分区分配动态分区分配动态分区分配q分区式存储管理的优缺点分区式存储管理的优缺点 优点:优点: 便于动态申请内存便于动态申请内存 便于共享内存便于共享内存 便于动态链接便于动态链接 缺点:缺点:碎片问题碎片问题( (外碎片外碎片) ),要求连续的内存空间,要求连续的内存空间,内存利用率不高,受实际内存容量限制内存利用率不高,受实际内存容量限制维弊疏刁践滋追店憋察盾板陷攒潍功鹃铰芍洒穿怨猪谍晨厚笑廉淳息蜒床操作

48、系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202445Operating SystemOperating System连续分配方式连续分配方式连续分配方式连续分配方式q单一连续分配单一连续分配q固定分区分配固定分区分配q动态分区分配动态分区分配q可重定位分区分配可重定位分区分配q对换(对换(SwappingSwapping)祭捕藏叭裁张奔刷缕唁鹊哎减冻振帕譬顿殴岔菌恰台差信锤荐签舰瞻另玫操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202446Operating SystemOperating System可重定位分区分配

49、可重定位分区分配可重定位分区分配可重定位分区分配q动态重定位的引入动态重定位的引入v连续分配存在连续分配存在的问题的问题必须有足够大的必须有足够大的连续空间才能分连续空间才能分配配v解决方法解决方法:“拼接拼接”或或“紧凑紧凑”的引入的引入抑蓑苛蕴怯戒寝珊睦驳哩泞烧诀足蔡打帚凤筛戈漓兑怕槽狱理戈鞭葛作吗操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202447Operating SystemOperating System可重定位分区分配可重定位分区分配可重定位分区分配可重定位分区分配q动态重定位的实现动态重定位的实现v作业装入内存后的所有地址仍是作业装入内

50、存后的所有地址仍是相对地址相对地址,将,将相相对地址对地址转换转换成成物理地址物理地址的工作的工作在指令执行时在指令执行时进行进行v需要有硬件地址变换机构的支持需要有硬件地址变换机构的支持敏儒索翅添宗隋熏薄颐穴奔沙擞入焊颊郊造爽诺黑兄辰些悬椽芭芽澄褂蝉操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202448Operating SystemOperating System可重定位分区分配可重定位分区分配可重定位分区分配可重定位分区分配q动态重定位分区分配算法动态重定位分区分配算法v在一个分区释放后立即移动在一个分区释放后立即移动v当请求得不到满足时再移动当请

51、求得不到满足时再移动喷浆勒付肩雄惺搂茨鸵谆荡迄磷檀英睹钵裹痈邑事荒瞧尧矿杏苑痊铺窜墨操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202449Operating SystemOperating System可重定位分区分配可重定位分区分配可重定位分区分配可重定位分区分配q可重定位分区的优缺点可重定位分区的优缺点v优优点点: :解解决决了了可可变变分分区区分分配配所所引引入入的的“ “外外零零头头” ”问题。问题。消除内存碎片,提高内存利用率。消除内存碎片,提高内存利用率。v缺点缺点: :提高硬件成本,紧凑时花费时间。提高硬件成本,紧凑时花费时间。所创躁锻巩栓

52、丸吸镊剖移咕匠咕县操奏疲锁布蛾蛇玖懒蓬镍诌技遂忆棚溯操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202450Operating SystemOperating System可重定位分区分配可重定位分区分配可重定位分区分配可重定位分区分配q多重分区多重分区v即即一一个个程程序序可可以以占占据据主主存存中中不不连连续续的的多多个个分分区区可以解决碎片问题可以解决碎片问题v支支持持结结构构化化程程序序设设计计,操操作作系系统统往往往往把把一一道道作作业业分分成成若若干干片片段段如如子子程程序序、主主程程序序、数数据据组等。组等。v需要硬件支持(多对界地址寄存器,

53、需要硬件支持(多对界地址寄存器,重定位重定位寄存器寄存器)v管理复杂管理复杂敞场锋鹤压酣巫政硝晰钞删炕锦猜瘟除羌浩俄砒炽扛弄因哲叉气陵撒磕南操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202451Operating SystemOperating System可重定位分区分配可重定位分区分配可重定位分区分配可重定位分区分配q多重分区多重分区 螟祖宗湍望蜡缠援味贝喇涣吝淹瞎腊磷柑烘吹凑营角倚彝栋郊沉瘦纠泻峭操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202452Operating SystemOperating Syst

54、emq分区的保护分区的保护 为为了了防防止止一一道道作作业业有有意意或或无无意意地地破破坏坏操操作作系系统统或或其其它它作作业业。一一般般说说来来,没没有有硬硬件件支支持持,实实现有效的存储保护是困难的。通常采取:现有效的存储保护是困难的。通常采取:v界限寄存器方式界限寄存器方式v保护键方式保护键方式v两种措施,或二者兼而有之。两种措施,或二者兼而有之。可重定位分区分配可重定位分区分配可重定位分区分配可重定位分区分配欧臀烫英错仇共阿侠染锤协皿汹筷鲤秩篇四掀飘币付赐衫盘屎窘镭嘴驶闪操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202453Operating S

55、ystemOperating Systemq保护过程保护过程防止地址越界防止地址越界 一般由硬件提供一对寄存器:一般由硬件提供一对寄存器:v 基址寄存器:存放起始地址基址寄存器:存放起始地址v 限长寄存器:存放长度限长寄存器:存放长度(上界寄存器(上界寄存器/ /下界寄存器)下界寄存器)可重定位分区分配可重定位分区分配可重定位分区分配可重定位分区分配婪禹慎饺诺望讣蘸卫抓国封哺拴窥图拟蝶净雁矮允牌超输簿蛔乘北闻垢必操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202454Operating SystemOperating Systemq界限寄存器保护界限寄存器

56、保护v60K 60K 访问地址访问地址 =124K =124K v则产生访问地址界中断则产生访问地址界中断可重定位分区分配可重定位分区分配可重定位分区分配可重定位分区分配盟滦尔晕暮杯辫哆墩类由佐冗员潘苗晨吱肇帚胸校披良癌惯崖胎卵酉卞芝操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202455Operating SystemOperating Systemq基址、限长寄存器保护基址、限长寄存器保护v相对地址相对地址 限长寄存器的值限长寄存器的值v则产生访问地址界中断则产生访问地址界中断可重定位分区分配可重定位分区分配可重定位分区分配可重定位分区分配霞测溪陶茹一

57、赛枯观飞疙珍撒缮怂狮设垢藻闽苦铂蒙镣锤喝蒲腰纠臭禄爷操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202456Operating SystemOperating Systemq防止操作越权防止操作越权 对于允许多个进程共享的存储区域,对于允许多个进程共享的存储区域,每个进程都有自己的访问权限。如果一个每个进程都有自己的访问权限。如果一个进程对共享区域的访问违反了权限规定,进程对共享区域的访问违反了权限规定,则发生操作越权则发生操作越权 即读写保护即读写保护可重定位分区分配可重定位分区分配可重定位分区分配可重定位分区分配彪神童托岛苍戊贡茂际贩墨展幼少俩絮层献望

58、溺患禄刚戴谰秩朱河晕喊乙操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202457Operating SystemOperating Systemq保护键方式保护键方式可重定位分区分配可重定位分区分配可重定位分区分配可重定位分区分配邀恬脱旷懒允侄兽崩落番雌展粮史寺予孪坡凶判盂醚靴痈柳睡戒芽酝抄共操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202458Operating SystemOperating System连续分配方式连续分配方式连续分配方式连续分配方式q单一连续分配单一连续分配q固定分区分配固定分区分配q动态分区

59、分配动态分区分配q可重定位分区分配可重定位分区分配q对换(对换(SwappingSwapping)凶漾掸贸饯巨伞降牙吭徒鞭魔恍仅吭旅翻韩随遇院迄驴算缉柳靡疟璃宵疑操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202459Operating SystemOperating System对换(对换(对换(对换(SwappingSwapping)q对换的引入对换的引入 v所谓所谓“对换对换”,是指把内存中暂时不能运行,是指把内存中暂时不能运行的进程或者暂时不用的程序和数据,调出到的进程或者暂时不用的程序和数据,调出到外存上,以便腾出足够的内存空间,再把已外存上,以

60、便腾出足够的内存空间,再把已具备运行条件的进程或进程所需要的程序和具备运行条件的进程或进程所需要的程序和数据,调入内存。对换是数据,调入内存。对换是提高内存利用率提高内存利用率的的有效措施有效措施v如果对换是以整个进程为单位,称为如果对换是以整个进程为单位,称为“整体整体对换对换”或或“进程对换进程对换”v如果对换是以如果对换是以“页页”或或“段段”为单位进行的,为单位进行的,则称为则称为“页面对换页面对换”或或“分段对换分段对换”,又统,又统称为称为“部分对换部分对换”异率酒循梦逝申员茎豌选港溜卢可捣吃梦原碧犯靠佑琼菲处造或瑞坝珍亭操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四

61、章存储器管理7/26/202460Operating SystemOperating System对换(对换(对换(对换(SwappingSwapping)q对换空间的管理对换空间的管理v外存中对换区主要存放从内存中换出的进程,外存中对换区主要存放从内存中换出的进程,对换空间管理的对换空间管理的主要目标主要目标是是提高进程换入和换提高进程换入和换出的速度出的速度v对换区中空闲盘块的管理对换区中空闲盘块的管理:在系统中配置相应:在系统中配置相应的数据结构,记录外存的使用情况。形式与内的数据结构,记录外存的使用情况。形式与内存在动态分区分配方式中所用数据结构相似,存在动态分区分配方式中所用数据结构

62、相似,即用即用空闲分区表或空闲分区链空闲分区表或空闲分区链。在空闲分区表。在空闲分区表中的每个表目中应包含两项,中的每个表目中应包含两项, 即即对换区的首址对换区的首址及其及其大小大小,它们的单位是盘块号和盘块数,它们的单位是盘块号和盘块数v对换区的分配采用对换区的分配采用连续分配方式连续分配方式,分配算法可,分配算法可以是以是首次适应算法首次适应算法、循环首次适应算法循环首次适应算法或或最佳最佳适应算法适应算法饺吉皇旱肮抛润亡罐浴建交很应敌盘穆资剐溺呆草衡轰穿己襄谈尝堰频承操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202461Operating Sys

63、temOperating System对换(对换(对换(对换(SwappingSwapping)q进程的换出与换入进程的换出与换入v进程的换出进程的换出系统先系统先选择选择处于处于“阻塞阻塞”状态状态且且优先级最低优先级最低的进程作为换出进程,然后启动盘块,将该的进程作为换出进程,然后启动盘块,将该进程的程序和数据传送到磁盘的进程的程序和数据传送到磁盘的对换区对换区上。上。若传送未出现错误,便回收其所占用的内存若传送未出现错误,便回收其所占用的内存空间,并对该进程的空间,并对该进程的进程控制块进程控制块做相应的修做相应的修改改v进程的换入进程的换入系统应定时地查看所有进程的状态,从中找系统应定

64、时地查看所有进程的状态,从中找出出“就绪就绪”状态状态但已换出的进程,将其中但已换出的进程,将其中换换出时间出时间(换出到磁盘上换出到磁盘上)最久最久的进程作为换入的进程作为换入进程,将之换入,直至已无可换入的进程或进程,将之换入,直至已无可换入的进程或无可换出的进程为止无可换出的进程为止挺补踊隋蛋邮贬罢堪栅饭孰慑敬蜀孵显源绳杨乐弟押钙盎黄害纪炕劝酝埠操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202462Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q程序的装入和链接程序

65、的装入和链接 q连续分配方式连续分配方式 q基本分页存储管理基本分页存储管理 q基本分段存储管理基本分段存储管理q虚拟存储器的基本概念虚拟存储器的基本概念q请求分页存储管理方式请求分页存储管理方式q页面置换算法页面置换算法q请求分段存储管理方式请求分段存储管理方式熟饭谐皱瘦曙块痴鳃眼羌从舆迁售征蔽如未奈唾陵惠甸臭吗斗衙溯警若玻操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202463Operating SystemOperating System基本分页存储管理基本分页存储管理基本分页存储管理基本分页存储管理q页面与页表页面与页表q地址变换机构地址变换机构q

66、两级和多级页表两级和多级页表体霄读信亮育牙汗蓬祖订戊煞铂衣域徘吃叶孺敞漓抉牧开汝踊于铸忽横浓操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202464Operating SystemOperating System离散分配方式离散分配方式离散分配方式离散分配方式q连续分配方式连续分配方式要求为一个进程分配连续的内存空要求为一个进程分配连续的内存空间,会形成许多间,会形成许多“碎片碎片”,尽管采用尽管采用“ “紧凑紧凑” ”技术技术可以解决这个问题,但要为移动大量信息花去不可以解决这个问题,但要为移动大量信息花去不少的处理机时间,代价较高少的处理机时间,代价较

67、高q如果允许一个进程直接分散地装入到许多不相邻如果允许一个进程直接分散地装入到许多不相邻接的分区中,称为接的分区中,称为离散分配方式离散分配方式q离散分配方式有离散分配方式有分页存储管理方式分页存储管理方式和和分段存储管分段存储管理方式理方式q分页:把用户程序按逻辑页划分成大小相等的部分页:把用户程序按逻辑页划分成大小相等的部分,称为页或虚页。从分,称为页或虚页。从0 0开始编制页号,页内地址开始编制页号,页内地址是相对于是相对于0 0编址。编址。坐饰响阅浆熔搐彰狞改齐涉故新窟扎捏蜀孺纱决帛玲韭椒束横滩诀豪子总操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2

68、02465Operating SystemOperating System页面与页表页面与页表页面与页表页面与页表q页面页面v页面和物理块页面和物理块页面:页面:将一个进程的逻辑地址空间分成若干个将一个进程的逻辑地址空间分成若干个大小相等的片,称为大小相等的片,称为页面或页页面或页,并加以编号,并加以编号,从从0开始编制页号,页内地址是相对于开始编制页号,页内地址是相对于0编址。编址。物理块:物理块:内存按页的大小划分为大小相等的区内存按页的大小划分为大小相等的区域,域,称为物理块(物理页面,页框称为物理块(物理页面,页框(frame),帧),帧),同样加以编号,如同样加以编号,如0块、块、1

69、块等等块等等在为进程分配内存时,以块为单位将进程中的在为进程分配内存时,以块为单位将进程中的若干个页分别装入到多个可以不相邻接的物理若干个页分别装入到多个可以不相邻接的物理块中。由于进程的最后一页经常装不满一块而块中。由于进程的最后一页经常装不满一块而形成了不可利用的碎片,称之为形成了不可利用的碎片,称之为“页内碎片页内碎片”膏捣卡伍浸鞭掏荚程碍褒隧短拟眉鸽郧骤片指皿呛师麦茹貉膨傻捉谗铅沪操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202466Operating SystemOperating System页面与页表页面与页表页面与页表页面与页表q页面页面

70、v页面大小页面大小页面的大小应选择的适中,且页面大小应是页面的大小应选择的适中,且页面大小应是2的幂,通常为的幂,通常为512 B8 KB页面若太小页面若太小,虽然可使内存,虽然可使内存碎片减小碎片减小,从而,从而减少了内存碎片的总空间,减少了内存碎片的总空间, 有利于有利于提高内存提高内存利用率利用率,但也会使每个进程占用较多的页面,但也会使每个进程占用较多的页面,从而导致进程的从而导致进程的页表过长页表过长,占用大量内存;,占用大量内存; 此外,还会此外,还会降低页面换进换出的效率降低页面换进换出的效率如果选择的页面较大如果选择的页面较大,虽然可以,虽然可以减少页表的减少页表的长度长度,提

71、高页面换进换出的速度,但却又会使,提高页面换进换出的速度,但却又会使页内碎片增大页内碎片增大。畏途挠柞拈森狼但踪抽便攻捂畏堡噬且娜集鲸叹伴秆凶尔争紫宝邹脐午蕴操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202467Operating SystemOperating System页面与页表页面与页表页面与页表页面与页表q地址结构地址结构 分页地址中的地址结构如下:分页地址中的地址结构如下: 页号页号P偏移量偏移量W3112110 对对某某特特定定机机器器,其其地地址址结结构构是是一一定定的的。若若给给定定一一个个逻逻辑辑地地址址空空间间中中的的用用户户程程序

72、序地地址址为为A,页页面面的大的大小为小为L,则,则页号页号P和和页内地址页内地址d可按下式求得:可按下式求得: 下取整下取整吹企藻巷弧蹭颂逊猿敞村搂檬淋侵见涝漱柱适珐庶戮疽揖抑祟久挝客话逛操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202468Operating SystemOperating System页面与页表页面与页表页面与页表页面与页表q例:系统页面大小为例:系统页面大小为1KB,逻辑地址为,逻辑地址为2170,求,求页号与页内偏移量页号与页内偏移量v页号页号 P=INT2170/1024=2v页内偏移量页内偏移量d=2170 mod 1024

73、 =122第第0页页 01023第第1页页 10242047第第2页页 20483071v表示为表示为(2,122)粕癌诱翁椰末密旱垂井截至补镣叁奶唤泅俗埔挨展搅焙捶癌鞭铸逻臂导荫操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202469Operating SystemOperating System页面与页表页面与页表页面与页表页面与页表q主存分配主存分配v把用户程序的任一页分配到内存中的任一物理把用户程序的任一页分配到内存中的任一物理块,从而实现非连续的内存分配。块,从而实现非连续的内存分配。q问题问题v如何管理、如何进行地址变换。如何管理、如何进行地址

74、变换。拴籍橡积能裕参缺蝉位替回方竿瞥耽样幻暗廷斌堡钥患哟科葵苞袖治褥量操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202470Operating SystemOperating System页面与页表页面与页表页面与页表页面与页表q页表页表v分页系统中,分页系统中,将进程的每将进程的每一页一页离散地离散地存储在内存存储在内存的任一物理的任一物理块中,为每块中,为每个进程建立个进程建立一张一张页面映页面映像表像表,简称,简称页表页表 v作用:实现作用:实现页号到物理块号的映射页号到物理块号的映射哨跳召扫叼韶痉诉藏梨双冲檀潭极讲颐傅伶逛须滁羡蹈涎闽帖酚狞告耘希

75、操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202471Operating SystemOperating System页面与页表页面与页表页面与页表页面与页表q页表页表v列列出出了了用用户户程程序序的的逻逻辑辑地地址址与与其其在在主主存存中中的的物物理地址间的对应关系。理地址间的对应关系。v一一个个页页表表中中包包含含若若干干个个表表目目,表表目目的的自自然然序序号号对对应应于于用用户户程程序序中中的的页页号号,表表目目中中的的块块号号是是该该页对应的页对应的物理块号物理块号。v页页表表的的每每一一个个表表目目除除了了包包含含指指向向页页框框的的指指针针

76、外外,还包括一个还包括一个存取控制字段存取控制字段。v表目也称为表目也称为页描述子页描述子。芍瞥委脆聂丰赶陨琅壳翔输伶煞铝闷汇著蛰轰堕漓州昧牢测雾眶羽韦尿拱操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202472Operating SystemOperating System页面与页表页面与页表页面与页表页面与页表进程进程A页表页表00页号页号 块号块号1124354859程序程序A 00程序程序A 11程序程序B 02程序程序B 13程序程序A 24程序程序A 35程序程序B 26程序程序B 37程序程序A 48内存内存程序程序A 59程序程序A0页页1

77、页页2页页3页页4页页5页页n页页程序程序B0页页1页页2页页3页页4页页5页页m页页进程进程B页表页表02页号页号 块号块号132637乃威巴咕锯怎艾蜘菜岭热卖粪烫判腥哀驴盈咕徊脾奔钠艾怂政扩纂辛翔橡操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202473Operating SystemOperating System基本分页存储管理基本分页存储管理基本分页存储管理基本分页存储管理q页面与页表页面与页表q地址变换机构地址变换机构q两级和多级页表两级和多级页表垄潦恒澜腹抬他陵啼顽酮赘盘球肘缕趴嚼括赤司欺旗政畔氛针矫辈噪从狙操作系统第四章课件-第四章存储器管

78、理操作系统第四章课件-第四章存储器管理7/26/202474Operating SystemOperating System地址变换机构地址变换机构地址变换机构地址变换机构q基本地址变换机构基本地址变换机构v实现从实现从逻辑地址逻辑地址到到物理地址物理地址的转换,将逻辑地址的转换,将逻辑地址中的中的页号页号转换为内存中的转换为内存中的物理块号物理块号,通过,通过页表页表来来完成完成v页表的实现页表的实现寄存器:变换速度快、成本高,适应小型系统。寄存器:变换速度快、成本高,适应小型系统。页表驻留在内存:速度较低、成本低,适应大系统。页表驻留在内存:速度较低、成本低,适应大系统。v页表大多驻留在内

79、存中,在系统中设置页表大多驻留在内存中,在系统中设置页表寄存页表寄存器器PTR(Page Table Register),在其中存放,在其中存放页表在内存中的页表在内存中的始址始址和和页表的长度页表的长度v进程未执行时,页表的始址和页表长度存放在本进程未执行时,页表的始址和页表长度存放在本进程的进程的PCB中,当调度程序调度到某进程时,才中,当调度程序调度到某进程时,才将这两个数据装入页表寄存器将这两个数据装入页表寄存器敏翻阜恶惰癸烁黍傍橇湘婶湛苹焊慷龄牛蛋齿庇观瘫赫报免辅喷杭敷梭趋操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202475Operating

80、 SystemOperating System地址变换机构地址变换机构地址变换机构地址变换机构q地址结构地址结构例如:例如:32位地址,位地址,011为偏移量,为偏移量,1231为页号,最为页号,最大可以有大可以有1M(220)页,每页)页,每页4KB (212) 。页号页号P偏移量偏移量W3112110劲奎宿甜漾脊摹惰猖共吴懊冯务执织挚光霞移拒夜魏焊瓷嗅汕掂注硝域臆操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202476Operating SystemOperating System地址变换机构地址变换机构地址变换机构地址变换机构有愈瘦铬腑纳宜音督虑忻垄

81、事渐襟乓裤涤乐棠躁鬼命敢左吠寄把彬痪集屏操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202477Operating SystemOperating System地址变换机构地址变换机构地址变换机构地址变换机构q地址变换过程地址变换过程指令指令 LOAD 1,2500 的地址变换过程(块大小为的地址变换过程(块大小为1024B)侩佬琵瞄崔孩津完菇宣混商缉豹佣讣殴啦过猩盎仟泼扭待洗惫邑耳肥峙郁操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202478Operating SystemOperating Systemq地址变换过

82、程地址变换过程v把把虚虚拟拟地地址址2500转转换换成成页页号号P=2,位位移移量量W=452;v如果页号如果页号2大于页表大小,则中断;否则继续;大于页表大小,则中断;否则继续;v页页号号2与与页页表表起起址址1000运运算算(1000+2*20,设设页页描描述子大小为述子大小为20)得到页描述子地址为)得到页描述子地址为1040;v从页描述子中读取块号从页描述子中读取块号8;v根根据据页页描描述述子子的的“存存取取控控制制”判判断断该该指指令令是是否否被被允许访问内存,如果不允许,则中断;否则继续;允许访问内存,如果不允许,则中断;否则继续;v块块号号8与与位位移移量量452运运算算(8*

83、1024+452=9644,1024为页面大小)得到物理地址为页面大小)得到物理地址9644;v执行执行LOAD操作。操作。地址变换机构地址变换机构地址变换机构地址变换机构慨彝贯母五坑寄炔炙中槽鸦班鸡夹接佬恩纶韭郧拧稳焦脂衰勃碎贾轮咎崭操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202479Operating SystemOperating System地址变换机构地址变换机构地址变换机构地址变换机构q具有快表的地址变换机构具有快表的地址变换机构v由于页表是存放在内存中,因此每次由于页表是存放在内存中,因此每次CPU存存取一个数据要取一个数据要两次访问内存

84、两次访问内存v为提高地址变换速度,在地址变换机构中增为提高地址变换速度,在地址变换机构中增设一个具有设一个具有并行查询能力并行查询能力的高速缓冲寄存器,的高速缓冲寄存器,又称为又称为“联想寄存器联想寄存器”(Associative Memory)或)或“快表快表”,用以存放当前访问,用以存放当前访问的那些页表项的那些页表项v快表通常可存放快表通常可存放16-512个表项,如果设计得个表项,如果设计得当,命中率可达当,命中率可达90以上以上桩急翁骤叼协验趋判陀亢脑分涕柠南蔚黑支棉娄齐恰训莉灸道逛设安未喊操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202480

85、Operating SystemOperating System地址变换机构地址变换机构地址变换机构地址变换机构页表寄存器页表寄存器页表始址页表始址页表长度页表长度页号页号页页内地址内地址逻辑地址逻辑地址L L越界中断越界中断块号块号b页表页表页号页号页号页号输输入入寄寄存存器器块号块号bb快表快表d物理地址物理地址具有快表的地址变换机构具有快表的地址变换机构娇扣凝胀哀晨啼职臀捷痊救终壮步愿信赂纱淌贼睛瑚左巷潞亿频助戍版夸操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202481Operating SystemOperating System基本分页存储管理

86、基本分页存储管理基本分页存储管理基本分页存储管理q页面与页表页面与页表q地址变换机构地址变换机构q两级和多级页表两级和多级页表投龟哉洛担盘彪案啃分腐毒牺沙罗缄谚俊堂诱交门彬赋篡谊扒匙缠镑院何操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202482Operating SystemOperating System两级和多级页表两级和多级页表两级和多级页表两级和多级页表q两级和多级页表两级和多级页表 v现代的大多数计算机系统,都支持非常大的逻辑地现代的大多数计算机系统,都支持非常大的逻辑地址空间址空间(232264)。在这样的环境下,页表就变得。在这样的环境下,

87、页表就变得非常大,要占用相当大的内存空间非常大,要占用相当大的内存空间v例如,对于一个具有例如,对于一个具有32位逻辑地址空间的分页系位逻辑地址空间的分页系统,若规定页面大小为统,若规定页面大小为4 KB即即212 B,则在每个进,则在每个进程页表中的页表项可达程页表中的页表项可达1M(220)个之多。若每个表个之多。若每个表项占用项占用4个字节个字节(32bit), 故每个进程仅仅其页表故每个进程仅仅其页表就要占用就要占用4 MB的内存空间,而且还的内存空间,而且还要求要求是是连续连续的的页号页号P偏移量偏移量W3112110额趴恒庞析豌谓鼎痞婪衍砍逊秽崎帘幂尤苦狮槛涅玉锣腺窥及矣晾芒莉座操

88、作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202483Operating SystemOperating System两级和多级页表两级和多级页表两级和多级页表两级和多级页表v可以采用这样两个方法来解决这一问题可以采用这样两个方法来解决这一问题 采用采用离散分配方式离散分配方式来解决难以找到一块连来解决难以找到一块连续的大内存空间的问题续的大内存空间的问题 只将当前需要的只将当前需要的部分页表项调入内存部分页表项调入内存, 其其余的页表项仍驻留在磁盘上,需要时再调余的页表项仍驻留在磁盘上,需要时再调入入趣喜甭庞孙稻赦颁汞韭智凛节立气楞订山骑硅涛砍霓介示奎招

89、哟券疑昭族操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202484Operating SystemOperating System两级和多级页表两级和多级页表两级和多级页表两级和多级页表q两级页表两级页表(Two-Level Page Table) v可利用可利用将页表分页将页表分页,并离散地将各个页面分别,并离散地将各个页面分别存放在不同的物理块中,同样要为离散分配的存放在不同的物理块中,同样要为离散分配的页表再建立一张页表,称为页表再建立一张页表,称为外层页表外层页表(Outer Page Table),每个页表项中记录了页表页,每个页表项中记录了页表

90、页面的物理块号面的物理块号210=1024210=1024212=4KB谜脯犁属坷狰邓键馅愈客铱瘟抓份适招驴煽氦招讫郭傈把鬼郑取唆睛乌嚏操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202485Operating SystemOperating System两级和多级页表两级和多级页表两级和多级页表两级和多级页表101110780121742n第第0页页表页页表1460121023第第1页页表页页表114115011023外部页表外部页表012345671141151468第第n页页表页页表14680121023内存空间内存空间 两级页表结构两级页表结构 每

91、个物理块为每个物理块为4KB,恰好放一个恰好放一个1页页表页页表(1024个项,个项,每项每项4BYTE),共需),共需1024个这样的块个这样的块氏佰座教抉斌则愁眨边鲤迈运孺殖痪许兼贞祝堕卢板筹弦村钎筋豹逃举茂操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202486Operating SystemOperating System两级和多级页表两级和多级页表两级和多级页表两级和多级页表 具有两级页表的地址变换机构具有两级页表的地址变换机构 沏唱坡盈薄幂苛硬倦炙痴丸梦田彩手唤萍绳簧甥俗漆玲赣吨胜尝挚颧圣迟操作系统第四章课件-第四章存储器管理操作系统第四章课件

92、-第四章存储器管理7/26/202487Operating SystemOperating System两级和多级页表两级和多级页表两级和多级页表两级和多级页表q多级页表多级页表v对于对于32位的机器,采用两级页表结构是合适位的机器,采用两级页表结构是合适的;但对于的;但对于64位的机器,如果页面大小仍采位的机器,如果页面大小仍采用用4 KB即即212 B,那么还剩下,那么还剩下52位,位, 假定仍假定仍按物理块的大小按物理块的大小(212位位)来划分页表,则将来划分页表,则将余余下的下的42位位用于外层页号。此时在外层页表中用于外层页号。此时在外层页表中可能有可能有4096 G个页表项,要占

93、用个页表项,要占用16384 GB的连续内存空间。的连续内存空间。 必须采用多级页表,必须采用多级页表,将外将外层页表再进行分页层页表再进行分页,也是将各分页离散地装,也是将各分页离散地装入到不相邻接的物理块中,再利用第入到不相邻接的物理块中,再利用第2级的外级的外层页表来映射它们之间的关系层页表来映射它们之间的关系谨惊腺琶难蝎爷鸽玻梢憨苑赣伎康献药馆祭淤组箔果淀搭佰勒礁赚痈坏谆操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202488Operating SystemOperating Systemq具有具有64位地址的分页存储管理位地址的分页存储管理242

94、=4096G210=1024212=4KB64两级和多级页表两级和多级页表两级和多级页表两级和多级页表v对于对于64位的计算机,如果要求它能支持位的计算机,如果要求它能支持264(=1844744 TB)规模的物理存储空间,则即使规模的物理存储空间,则即使是采用三级页表结构也是难以办到的;而在当前是采用三级页表结构也是难以办到的;而在当前的实际应用中也无此必要的实际应用中也无此必要辽翟层镀在上胺掂恨痉派相干糖阻殉密唯撵铁洱本遗访氨逗剁羹商桔扮垃操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202489Operating SystemOperating Sys

95、tem第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q程序的装入和链接程序的装入和链接 q连续分配方式连续分配方式 q基本分页存储管理基本分页存储管理 q基本分段存储管理基本分段存储管理q虚拟存储器的基本概念虚拟存储器的基本概念q请求分页存储管理方式请求分页存储管理方式q页面置换算法页面置换算法q请求分段存储管理方式请求分段存储管理方式暇琶全拒圈采帕隋刨教啮羚作坏肪漂芝押褐救凑蒸枉砚谋盒隔绑谊哭携戮操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202490Operating SystemOperating System基本分段存储管理基本

96、分段存储管理基本分段存储管理基本分段存储管理q分段存储管理方式的引入分段存储管理方式的引入q分段系统的基本原理分段系统的基本原理q信息共享信息共享q段页式存储管理方式段页式存储管理方式悯挛娜曼滚晋子唉蒂烃拨乍柄牢蜂塞驰筐铝法突航纽越慰拇撂荷掌抡胞涎操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202491Operating SystemOperating System基本分段存储管理基本分段存储管理基本分段存储管理基本分段存储管理.0S工作区段工作区段B主程序段主程序段M.0EP子程序段子程序段X0K.CALL X E.CALL Y FCALL A 1160

97、116N数组数组A12345.0FL子程序段子程序段Y不便于信息不便于信息共享、保护、共享、保护、动态增长和动态增长和链接链接筐挫糕搪迟寝愁咆溅闯谢镁信弱奠咨录弱挥备览炙模宋斌咕芥莲眷钻稠富操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202492Operating SystemOperating System分段存储管理方式的引入分段存储管理方式的引入分段存储管理方式的引入分段存储管理方式的引入q分页分页存储管理的主要目的是为了提高内存利用率存储管理的主要目的是为了提高内存利用率q分段分段存储管理的主要目的是为了存储管理的主要目的是为了满足用户在编程和使满

98、足用户在编程和使用上的要求用上的要求q分段管理的主要目的分段管理的主要目的v方便编程方便编程 用户作业通常按逻辑关系分若干个段用户作业通常按逻辑关系分若干个段LOAD 1, A|;STORE 1,B|;v信息共享信息共享 程序与数据的共享是以信息的逻辑单位为基础程序与数据的共享是以信息的逻辑单位为基础v信息保护信息保护 v动态增长动态增长v动态链接动态链接 嚏珊馈牛溶给书霍纤愁嫌稳熟针近狮阿嘶郭汐愁杜钒曰虱堤肥税壮琴叉塑操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202493Operating SystemOperating System基本分段存储管理基

99、本分段存储管理基本分段存储管理基本分段存储管理q分段存储管理方式的引入分段存储管理方式的引入q分段系统的基本原理分段系统的基本原理q信息共享信息共享q段页式存储管理方式段页式存储管理方式寄衣栋汝淋宏限披豹恬钙跑钧驭于茶描桩冈第体响吠杉蚁啮壶减业状涸禹操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202494Operating SystemOperating System分段系统的基本原理分段系统的基本原理分段系统的基本原理分段系统的基本原理q分段分段v分段存储管理方式中,作业的地址空间被分分段存储管理方式中,作业的地址空间被分成若干个成若干个段段(segme

100、nt),每个段定义了一组逻,每个段定义了一组逻辑信息辑信息v分段地址中的地址具有如下结构分段地址中的地址具有如下结构v分段方式已得到许多编译程序的支持分段方式已得到许多编译程序的支持段号段号段内地址段内地址31 16 15 0篆赞楚娠庶妄灸秆愚档巡又窖护境泵涤喀购忿镁械题腺专糖翘须毫钾腾盟操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202495Operating SystemOperating System分段系统的基本原理分段系统的基本原理分段系统的基本原理分段系统的基本原理q段表段表v在分段式存储管理系统中,为每个分段分配在分段式存储管理系统中,为每个

101、分段分配一个一个连续连续的分区,而进程中的的分区,而进程中的各个段各个段可以可以离离散散地移入内存中的不同的分区中地移入内存中的不同的分区中v系统为每个进程建立一张系统为每个进程建立一张段映射表段映射表,简称为,简称为“段表段表”v每个段在段表中占一个表项,其中记录了该每个段在段表中占一个表项,其中记录了该段在内存中的段在内存中的起始地址起始地址(又称为(又称为“基址基址”)和和段的长度段的长度悦扬庄痕峦脱苦臆提补幂梧唾恤召煮崖涣饮软些宅图雷冕摇频只前茨灸黍操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202496Operating SystemOperat

102、ing System分段系统的基本原理分段系统的基本原理分段系统的基本原理分段系统的基本原理q段表段表 它记录了段号,段的首(地)址和长度之它记录了段号,段的首(地)址和长度之间的关系间的关系 每一个程序设置一个段表,放在内存每一个程序设置一个段表,放在内存, ,属于属于进程的现场信息进程的现场信息段号段号012段首址段首址段长度段长度58K20K100K110K260K140K犬逢杠浑膀衔激须爽夜凄村椅畔频顿瘁衙仰浩撬晃助侠安蝶怔旺彼藻畴轨操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202497Operating SystemOperating Syst

103、em分段系统的基本原理分段系统的基本原理分段系统的基本原理分段系统的基本原理作业空间作业空间(MAIN)0030K(X)1020K(D)2015K(S)3010K(MAIN)030K(X)120K(D)215K(S)310K040K80K120K150K内存空间内存空间30K20K15K10K40K80K120K150K段长段长 基址基址段号段号段表段表0123 利用段表实现地址映射利用段表实现地址映射 咙茅琳乒闷症敢扎毗尊痢够款被吓泌酷守铀窃烈洼获聚狈欲俊辽统疼藕漏操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202498Operating SystemO

104、perating System分段系统的基本原理分段系统的基本原理分段系统的基本原理分段系统的基本原理q硬件支持硬件支持v系统设置一对寄存器系统设置一对寄存器v段表始址寄存器段表始址寄存器 用于保存正在运行进程的段表的始址用于保存正在运行进程的段表的始址v段表长度寄存器段表长度寄存器 用于保存正在运行进程的段表的长度用于保存正在运行进程的段表的长度瘫拒甘株姨湿聚析舜妹吵时煮脚仔茧赶详前嫡沽赐痕侨刷濒简绦牟丝凑峡操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202499Operating SystemOperating System分段系统的基本原理分段系统的

105、基本原理分段系统的基本原理分段系统的基本原理控制寄存器控制寄存器段表始址段表始址段表长度段表长度2100段号段号S越界越界1 K段长段长600段号段号01236 K4 K5002008 K9200基址基址位移量位移量W82928K82928692主存主存物理地址物理地址逻辑地址逻辑地址分段系统的地址变换过程分段系统的地址变换过程 月捎揖勃朗脉毁仔虑拐醚改苟意吸悲草往诡五冯汽朴董副冬宾瞧捣卉旅缴操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024100Operating SystemOperating System段表始址寄存器段表始址寄存器段表长度寄存器段

106、表长度寄存器逻辑地址逻辑地址 Cl Cb+段号段号S S 段内地址段内地址d比较比较比较比较b + d段段表表S= Cl快表快表物理地址物理地址lb.Sl b地址越界地址越界d=ld=l地址映射及存储保护机制地址映射及存储保护机制地址映射及存储保护机制地址映射及存储保护机制地址越界地址越界地址越界地址越界比较比较S扼芋妖家厨垫巢永荐厅们寐虾呵渺锣齐计外倾绦心忘量涣背翼戌垦持挑埠操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024101Operating SystemOperating System分段系统的基本原理分段系统的基本原理分段系统的基本原理分段系

107、统的基本原理分块方式分块方式使用使用碎片碎片长度长度目的目的分页存储分页存储管理管理物理分块物理分块系统需要系统需要对程序员对程序员是不可见,是不可见,使用简单使用简单每个进程每个进程只有一个只有一个内部碎片,内部碎片,大小不超大小不超过过1页页固定固定提高内存提高内存的利用率的利用率分段存储分段存储管理管理逻辑分块,逻辑分块,大小与信大小与信息块有关,息块有关,满足用户满足用户需要需要对程序员对程序员可见,使可见,使方便,但方便,但难度大难度大每个进程每个进程会产生多会产生多个外部碎个外部碎片片不确定不确定便于信息便于信息保护与共保护与共享,方便享,方便用户用户q分页和分段的主要区别分页和分

108、段的主要区别驱卑季米千氓缔培奠睬甩涪塑囊磺宠隔感咋膏邻臃育磕节废朝视微冕喧及操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024102Operating SystemOperating System基本分段存储管理基本分段存储管理基本分段存储管理基本分段存储管理q分段存储管理方式的引入分段存储管理方式的引入q分段系统的基本原理分段系统的基本原理q信息共享信息共享q段页式存储管理方式段页式存储管理方式蒲护誓涡转低儒迈假菲嘲闹陋箭砌桨腰惯焚赏廷债巷滑惟愚鞠唐颁钦查乍操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024103

109、Operating SystemOperating System信息共享信息共享信息共享信息共享q分段存储的一个优点是易于实现段的分段存储的一个优点是易于实现段的共享共享,即,即允许若干个进程共享一个或多个分段允许若干个进程共享一个或多个分段q分页系统中虽然也能实现程序和数据的共享,分页系统中虽然也能实现程序和数据的共享,但远不如分段系统方便但远不如分段系统方便q可重入代码(可重入代码(Reentrant Code)又称为又称为“纯纯代码代码”(Pure Code)是一种允许多个进程同是一种允许多个进程同时访问的代码。可重入代码是一种时访问的代码。可重入代码是一种不允许任何不允许任何进程对它进

110、行修改的代码进程对它进行修改的代码鸟刷啃午卜僚梯帐范抗旺稼竣外腋率哩若乔庚袁站沃曲灌翻着抵农让唯宇操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024104Operating SystemOperating System信息共享信息共享信息共享信息共享ed 1ed 2ed 40data 1data 10进程进程12122606170页表页表ed 1ed 2ed 40data 1data 10进程进程22122607180ed 1ed 2ed 40data 1data 10data 1data 10主存主存021226061707180页表页表分页系统中共享

111、分页系统中共享editor的示意图的示意图澜衍谣卉上裤止雁插米婿窗笨旋努豁镰聘艘喊乙迷聂馏雷其予刃丰怯咕逞操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024105Operating SystemOperating System信息共享信息共享信息共享信息共享 分段系统中共享分段系统中共享editor的示意图的示意图 editor进程1data 1进程2editordata 2段表段长基址16080402401608040380editordata 1data 280240280380420钢侯套霸驴袒林莎峪弃普蔗磨病斟罩聋晋邵讹疲赫部弛鄙式彤洲芍歼蘑如操

112、作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024106Operating SystemOperating System基本分段存储管理基本分段存储管理基本分段存储管理基本分段存储管理q分段管理的优缺点分段管理的优缺点v优点优点便于动态申请内存便于动态申请内存管理和使用统一化管理和使用统一化便于共享便于共享便于动态链接便于动态链接v缺点缺点产生碎片,段还需要连续的存储空间产生碎片,段还需要连续的存储空间思考:与可变分区存储管理方案的相同点与不同思考:与可变分区存储管理方案的相同点与不同点?点?滤芳有琴浸湖谦身漾淡瞎戌种岸取绊略院檄陵稳荫棚痘蛹惕西玫缮季寐翱

113、操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024107Operating SystemOperating System基本分段存储管理基本分段存储管理基本分段存储管理基本分段存储管理q分段存储管理方式的引入分段存储管理方式的引入q分段系统的基本原理分段系统的基本原理q信息共享信息共享q段页式存储管理方式段页式存储管理方式锡奢藐蹄咒狮孤羡胁竿搬辛吼释癌历绸侩份牲坎塑熊掇整汪磐波芳枯档蓑操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024108Operating SystemOperating System段页式存储管

114、理方式段页式存储管理方式段页式存储管理方式段页式存储管理方式q基本原理基本原理v是是分段分段和和分页分页原理的结合原理的结合v将用户程序分成若干个将用户程序分成若干个段段,再把每一段分成,再把每一段分成若干个若干个页页,并为每一段赋予一个段名,并为每一段赋予一个段名v段页式管理中,地址机构由段页式管理中,地址机构由段号段号、段内页号段内页号及及页内地址页内地址三部分所组成三部分所组成稀舟饱殃比节啊杨领卤怖拢眨拘巷葛宫盆鳃圆讶凑惨埔轨整蠕问霹刷死妆操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024109Operating SystemOperating S

115、ystem段页式存储管理方式段页式存储管理方式段页式存储管理方式段页式存储管理方式 作业地址空间和地址结构作业地址空间和地址结构 04K8K12K15K16K子程序段04K8K数据段04K8K10K12K(a)段号(S)段内页号(P)页内地址(W)(b)主程序段例例地址结构地址结构废眶篓肝雍杰滚秩嘛糊怨秆姜高霍孟厉局掂脖鞘擦井篙追篷并壶或琶以浮操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024110Operating SystemOperating System段页式存储管理方式段页式存储管理方式段页式存储管理方式段页式存储管理方式 利用段表和页表实现地

116、址映射利用段表和页表实现地址映射 段号状态页表大小页表始址0111213041页号状态存储块#0111213041操作系统主存页表段表段表大小段表始址段表寄存器橡附排浑唯刻夫荡幼耍杰狼缮换碘讥功茄睁池卒楚伸颓汤没也虱领诗逮狮操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024111Operating SystemOperating System段页式存储管理方式段页式存储管理方式段页式存储管理方式段页式存储管理方式q地址变换过程地址变换过程 段页式系统中的地址变换机构段页式系统中的地址变换机构 段表寄存器段表寄存器段表始址段表始址段表长度段表长度段号段号S

117、页号页号P段超长段超长段表段表0123页内地址页内地址页表页表0123b块号块号 b b块内地址块内地址页表始址页表始址页表长度页表长度卫腑卉畸茅弊粕巷唆旗福乏渴超过谬场讣琴穿惨虚旦渠邦赖榴渔蛋婉暖滔操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024112Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q程序的装入和链接程序的装入和链接 q连续分配方式连续分配方式 q基本分页存储管理基本分页存储管理 q基本分段存储管理基本分段存储管理q虚拟存储器的基本概念虚拟存储器的基本概

118、念q请求分页存储管理方式请求分页存储管理方式q页面置换算法页面置换算法q请求分段存储管理方式请求分段存储管理方式笺澳筑怜鸥愁装嫩恕痞窖蕾暇弱湖寻妙极申锁咆浇慷场祥脂受澎计沁恳哉操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024113Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q交换与覆盖交换与覆盖q虚拟存储器的引入虚拟存储器的引入q虚拟存储器的实现方法虚拟存储器的实现方法q虚拟存储器的特征虚拟存储器的特征况桨仪尊价溺丢钢纲聪变抿谎械涪拧岁晕喻赌围啸撮沙贰陵

119、狼培捞依情私操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024114Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q交换技术与覆盖技术交换技术与覆盖技术v是在多道环境下扩充内存的方法,用以是在多道环境下扩充内存的方法,用以解决解决在在较小的存储空间中运行较大程序较小的存储空间中运行较大程序时遇到的时遇到的矛盾矛盾v覆盖技术覆盖技术主要用在早期的操作系统中主要用在早期的操作系统中v交换技术交换技术被广泛用于小型分时系统中,交换被广泛用于小型分时系统中,交换技术

120、的发展导致了虚存技术的出现技术的发展导致了虚存技术的出现咨纽仿般牧柯葵腑厘骄桓灿扁陕协黄烙药华秤骸喝女羞共予搬辩俐靶踢悦操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024115Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q交换与覆盖异同点交换与覆盖异同点v共同点:共同点: 进进程程的的程程序序和和数数据据主主要要放放在在外外存存,当当前前需需要要执执行行的的部部分分放放在在内内存存,内内外外存存之之间间进进行行信信息息交换交换v不同点:如何控制交换?不同点

121、:如何控制交换?昌镇传丫熟焙踪遵狱篡挂炬毛私匙汹呆菊跟片阶吹砷舞蔼孺呕匆瘸傀烙龚操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024116Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q覆盖技术覆盖技术v把程序划分为若干个功能上相对独立的程序把程序划分为若干个功能上相对独立的程序段,按照其自身的逻辑结构将那些段,按照其自身的逻辑结构将那些不会同时不会同时执行执行的程序段的程序段共享同一块内存共享同一块内存区域区域v程序段先保存在磁盘上,当有关程序段的前程序段先

122、保存在磁盘上,当有关程序段的前一部分执行结束,把后续程序段调入内存,一部分执行结束,把后续程序段调入内存,覆盖前面的程序段覆盖前面的程序段(内存(内存“扩大扩大”了)了)v覆盖:一个作业的若干程序段,或几个作业覆盖:一个作业的若干程序段,或几个作业的某些部分的某些部分共享共享某一个存储空间某一个存储空间v一般要求作业各模块之间有明确的调用结构,一般要求作业各模块之间有明确的调用结构,程序员要向系统指明覆盖结构程序员要向系统指明覆盖结构,然后由操作,然后由操作系统完成自动覆盖系统完成自动覆盖浊丢簧锁馈贿腊充诀积吱诧物症浦遂剑复寝弥棱加咨词崔上狗钓纠绞逻攫操作系统第四章课件-第四章存储器管理操作系

123、统第四章课件-第四章存储器管理7/26/2024117Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q覆盖技术的缺点覆盖技术的缺点v对用户不透明,增加了用户负担对用户不透明,增加了用户负担v目前这一技术用于小型系统中的系统程序的内目前这一技术用于小型系统中的系统程序的内存管理上存管理上vMS-DOSMS-DOS的启动过程中,多次使用覆盖技术;启的启动过程中,多次使用覆盖技术;启动之后,用户程序区动之后,用户程序区TPATPA的高端部分与的高端部分与COMMAND.COMCOMMAND.COM暂驻模

124、块也是一种覆盖结构暂驻模块也是一种覆盖结构纪寂阵淬铃乒斡丫脱憎粘偏跃压讥崇酵挂点亩砒惭黍额模帖问垣源蜜瘪颗操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024118Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q交换技术交换技术 当内存空间紧张时,系统将内存中某些进当内存空间紧张时,系统将内存中某些进程程暂时移到外存暂时移到外存,把外存中某些进程换进内存,把外存中某些进程换进内存,占据前者所占用的区域,这种技术是进程在内占据前者所占用的区域,这种技术是进程在内

125、存与外存之间的动态调度。多用于分时系统中存与外存之间的动态调度。多用于分时系统中深曰痪叮搬傀单沥盯渭疆尊努萨阁粪培羽镇懦亦咋兵烛嗡垄椽毕眩捅谭协操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024119Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q交换技术实现中的几个问题交换技术实现中的几个问题v选择原则选择原则: :将哪个进程换出内存?将哪个进程换出内存?v交换时机的确定交换时机的确定v交换时需要做哪些工作?交换时需要做哪些工作?v换入内存时位置的确定换入

126、内存时位置的确定娩滤顿臣弥拎辐眼剁堕啦剖善镑德泌翼评醚吮景挠拭祸番苞偿叹怠虚前董操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024120Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q选择原则选择原则v将哪个进程换出内存?将哪个进程换出内存?v例子:分时系统,时间片轮转法或基于优先例子:分时系统,时间片轮转法或基于优先数的调度算法,在选择换出进程时,要确定数的调度算法,在选择换出进程时,要确定换出的进程是要长时间等待换出的进程是要长时间等待的的v需要特殊考虑

127、的是:任何等待需要特殊考虑的是:任何等待I/OI/O进程中存在进程中存在的问题的问题v解决:从来不换出处于等待解决:从来不换出处于等待I/OI/O状态的进程状态的进程 有些有些I/OI/O进程因进程因DMADMA(直接存储器访问)而不能(直接存储器访问)而不能换出内存或换出前需要操作系统的特殊帮助换出内存或换出前需要操作系统的特殊帮助筹心狙弟饼婪胜虾唱汀接彭掣诽锁浅芭骂器胚酌冤赏诗冈饰蜡嫌件猾监宅操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024121Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念

128、虚拟存储器的基本概念虚拟存储器的基本概念q交换时机的确定交换时机的确定v何时需发生交换?何时需发生交换? 例子:例子:只要不用就换出(很少再用)只要不用就换出(很少再用)只在内存空间不够或有不够的危险时换出只在内存空间不够或有不够的危险时换出来购汽瘫譬柄墒粉迁巩邯勿趋恼扇浇岭松古殴严岳答则修欧岭医僚兽怜怒操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024122Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q交换时需要做哪些工作交换时需要做哪些工作 v盘交换区

129、:盘交换区:足够大,存放所有用户程序的足够大,存放所有用户程序的所有内存映像的所有内存映像的拷贝拷贝v直接存取:直接存取:必须能够对这些用户程序的内必须能够对这些用户程序的内存映像进行存取操作存映像进行存取操作湾娘顽砍毗奸渡顽斑妄冤逸漳纂腆朽蛛桥涧揣嚎耸茅耽树申勒罐因悦卧眠操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024123Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q换入内存时位置的确定换入内存时位置的确定v换出后再换入的内存位置一定要在换出前的换出

130、后再换入的内存位置一定要在换出前的原来位置上吗?原来位置上吗?v受地址受地址“绑定绑定”技术的影响,即绝对地址产技术的影响,即绝对地址产生时机的限制生时机的限制盾信牙柳培套渴讹裹冯工浩迄盘剁笺眩吼虹犊娩圭堰喝抬搓酷镰咳仰宣戊操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024124Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q覆盖与交换的比较覆盖与交换的比较v与覆盖技术相比,交换技术不要求用户给出与覆盖技术相比,交换技术不要求用户给出程序段之间的逻辑覆盖结构

131、;而且,交换程序段之间的逻辑覆盖结构;而且,交换发发生在进程或作业之间生在进程或作业之间v而覆盖而覆盖发生在同一进程或作业内发生在同一进程或作业内。v覆盖只能覆盖那些与覆盖段无关的程序段覆盖只能覆盖那些与覆盖段无关的程序段劲兔毒葡叙谎行启霜惟纫疆黔埋怨囊丈宽贼号能紫亏简样搞膏佛素悉雁怯操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024125Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q交换与覆盖交换与覆盖q虚拟存储器的引入虚拟存储器的引入q虚拟存储器的实现

132、方法虚拟存储器的实现方法q虚拟存储器的特征虚拟存储器的特征介颇佃蛛衙渠澎梧匈包膘己涸道吹澎彩粉靳桐灼茵巢惑勋父速靡两醋溶塑操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024126Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念连续分配连续分配 离散分配离散分配 (基本基本)分页分页 (基本基本)分段分段段页式段页式方便程序装入方便程序装入提高内存利用率提高内存利用率浚开讣魔像联袍军奏引糠滥炬甸野弘栓斗住恳蚀我菩谦骨元捏窄散瓮舵奋操作系统第四章课件-第四章存储器

133、管理操作系统第四章课件-第四章存储器管理7/26/2024127Operating SystemOperating System虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入q程序装入内存时可能会出现如下问题程序装入内存时可能会出现如下问题v程序太大,要求的空间超出了内存总容量程序太大,要求的空间超出了内存总容量v有大量作业要求运行,但内存不能容下所有有大量作业要求运行,但内存不能容下所有作业作业q程序暂时不执行或运行完是否还要占用内存程序暂时不执行或运行完是否还要占用内存q常规存储器管理方式的特征常规存储器管理方式的特征v一次性一次性要求作业全部装入内存才能运行要求作业全部

134、装入内存才能运行v驻留性驻留性程序装入内存后便一直驻留内存,直至运程序装入内存后便一直驻留内存,直至运行结束行结束许多不用或暂时不用的程序占用了大量内存空许多不用或暂时不用的程序占用了大量内存空间,而其他程序却无法装入!间,而其他程序却无法装入!是否必要?是否必要?千迷赶憨咸吾谷越要慈坪鸥次等腋契芯阀龋嫌评咙闯腻故笆布湛欧伶斤挂操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024128Operating SystemOperating System虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入q局部性原理局部性原理1968年,年, Den

135、ning.P指出指出 v程序执行时,除了少部分的转移和过程调用程序执行时,除了少部分的转移和过程调用指令外,在大多数情况下仍是指令外,在大多数情况下仍是顺序执行顺序执行的的v过程调用将会使程序的执行轨迹由一部分区过程调用将会使程序的执行轨迹由一部分区域转至另一部分区域,但经研究看出,过程域转至另一部分区域,但经研究看出,过程调用的深度在大多数情况下都调用的深度在大多数情况下都不超过不超过5v程序中存在许多程序中存在许多循环结构循环结构,这些虽然只由少,这些虽然只由少数指令构成,但是它们将多次执行数指令构成,但是它们将多次执行v程序中还包括许多对数据结构的处理,如对程序中还包括许多对数据结构的处

136、理,如对数组进行操作,它们往往都数组进行操作,它们往往都局限于很小的范局限于很小的范围内围内择喻桂祟贾讯阎跌智肚公研狂琶去锋傣哺假闷筒次裸名承矽暑浑懊排焕负操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024129Operating SystemOperating System虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入q局限性又表现在下述两个方面局限性又表现在下述两个方面v时间局限性时间局限性如果程序中的某条指令一旦执行,如果程序中的某条指令一旦执行, 则不久则不久以后该指令可能再次执行以后该指令可能再次执行如果某数据被访问过,如果某

137、数据被访问过, 则不久以后该数据则不久以后该数据可能再次被访问可能再次被访问典型原因是因在程序中存在着大量典型原因是因在程序中存在着大量循环操作循环操作v空间局限性空间局限性一旦程序访问了某个存储单元,在不久之后,一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也将被访问,即程序在一其附近的存储单元也将被访问,即程序在一段时间内所段时间内所访问的地址访问的地址,可能集中可能集中在一定的在一定的范围之内,其典型情况便是程序的顺序执行范围之内,其典型情况便是程序的顺序执行揩戴孽让蚤师琢侧矩邯焊不群郭勃慈竹沉侵鲁悠磅抖休捡便铂篆憋环蔬柬操作系统第四章课件-第四章存储器管理操作系统第四章课件-

138、第四章存储器管理7/26/2024130Operating SystemOperating System虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入q虚拟存储器的虚拟存储器的基本思想基本思想是:程序、数据、堆栈是:程序、数据、堆栈的大小可以超过内存的大小,操作系统把程序的大小可以超过内存的大小,操作系统把程序当前使用的部分保留在内存,而把其它部分保当前使用的部分保留在内存,而把其它部分保存在磁盘上,并在需要时在内存和磁盘之间动存在磁盘上,并在需要时在内存和磁盘之间动态交换态交换q虚拟存储器支持多道程序设计技术虚拟存储器支持多道程序设计技术史喘恒酬胆阁副雌沦纱称撅饮肩坏诺炒棍

139、脆举畏驱袁择条惜豹凸雍痪览啮操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024131Operating SystemOperating System虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入q虚拟存储器虚拟存储器定义定义v是指具有是指具有请求调入功能请求调入功能和和置换功能置换功能, 能从能从逻逻辑上辑上对内存容量加以扩充的一种存储器系统对内存容量加以扩充的一种存储器系统。其逻辑容量由其逻辑容量由内存容量和外存容量之和内存容量和外存容量之和所决所决定,其运行定,其运行速度速度接近于接近于内存速度,而其内存速度,而其成本成本却又接近于

140、外存。却又接近于外存。层降罪卜受朴条秦曰躇摸丹妖疟疼杯讳鸿逝鹃辟冲汤纫河苞爪乏平俊倔钮操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024132Operating SystemOperating System虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入虚拟存储器的引入q注意:注意:一个虚拟存储器的最大容量是由计算机一个虚拟存储器的最大容量是由计算机的地址结构确定的。如:若的地址结构确定的。如:若CPUCPU的有效地址长的有效地址长度为度为3232位,则程序可以寻址范围是位,则程序可以寻址范围是0 0(2(23232)-1 )-1 ,即虚存容量为,即虚存

141、容量为 4GB 4GB。q虚虚拟拟存存储储器器的的容容量量与与主主存存的的实实际际大大小小没没有有直直接接的关系,而是由主存与辅存的容量之和所确定。的关系,而是由主存与辅存的容量之和所确定。巧埂身找岳芋郧较峻毡泉抖诺嘎琢腊播祷弛允峭鞭督诞瞩陕致廖孩虑蓉旁操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024133Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的基本概念q交换与覆盖交换与覆盖q虚拟存储器的引入虚拟存储器的引入q虚拟存储器的实现方法虚拟存储器的实现方法q虚拟存

142、储器的特征虚拟存储器的特征嘘摘拳简吟鬃胀锭构摹谆此锗伐邪铝投本钩衡狭筷润屈单矫滇裳讼儿趾扁操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024134Operating SystemOperating System虚拟存储器的实现方法虚拟存储器的实现方法虚拟存储器的实现方法虚拟存储器的实现方法q虚拟存储器的实现都是建立在虚拟存储器的实现都是建立在离散分配离散分配的存储的存储管理方式基础上的管理方式基础上的q主要有主要有v请求分页系统请求分页系统v请求分段系统请求分段系统毗息沾魂福溜心藻彼蹦镣服慢瘪喀溉瓦流锦孕叁选术列秸葫画搂嘘披度堪操作系统第四章课件-第四章

143、存储器管理操作系统第四章课件-第四章存储器管理7/26/2024135Operating SystemOperating System虚拟存储器的实现方法虚拟存储器的实现方法虚拟存储器的实现方法虚拟存储器的实现方法q请求分页系统请求分页系统v在分页系统的基础上增加了在分页系统的基础上增加了请求调页请求调页功能和功能和页面置页面置换换功能功能v硬件支持硬件支持请求分页的页表机制请求分页的页表机制,它是在纯分页的页表机制它是在纯分页的页表机制上增加若干项而形成的,作为请求分页的数据结构;上增加若干项而形成的,作为请求分页的数据结构;缺页中断机构缺页中断机构,即每当用户程序要访问的页面尚即每当用户程

144、序要访问的页面尚未调入内存时未调入内存时 便产生一缺页中断,以请求便产生一缺页中断,以请求OS将所将所缺的页调入内存;缺的页调入内存;地址变换机构地址变换机构, 它同样是在纯分页地址变换机构它同样是在纯分页地址变换机构的基础上发展形成的的基础上发展形成的v实现请求分页的软件实现请求分页的软件用于实现请求调页的软件和实现用于实现请求调页的软件和实现页面置换的软件页面置换的软件纤芭娄短涨痴刻许估宽烧辨篱隶漏掌区牌宽欲颁芥蔬炔梢窟举玫拦走涩梆操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024136Operating SystemOperating System

145、虚拟存储器的实现方法虚拟存储器的实现方法虚拟存储器的实现方法虚拟存储器的实现方法q请求分段系统请求分段系统v在分段系统的基础上,增加了在分段系统的基础上,增加了请求调段请求调段及及分段分段置换置换功能功能v硬件支持硬件支持请求分段的段表机制请求分段的段表机制缺段中断机构缺段中断机构地址变换机构地址变换机构v软件支持软件支持癣疮铡慨庞嗡杀街乓娘瞎地该凑钧匠青份匣抢东黎竣淋咙儡灾局友照宇献操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024137Operating SystemOperating System虚拟存储器的基本概念虚拟存储器的基本概念虚拟存储器的

146、基本概念虚拟存储器的基本概念q交换与覆盖交换与覆盖q虚拟存储器的引入虚拟存储器的引入q虚拟存储器的实现方法虚拟存储器的实现方法q虚拟存储器的特征虚拟存储器的特征赁渝榴靴阻篙钥薛吵躁血弗茄社笨托尖禁梆藕讣靠漫嚷湿宴竞伊令调龚斑操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024138Operating SystemOperating System虚拟存储器的特征虚拟存储器的特征虚拟存储器的特征虚拟存储器的特征q多次性多次性 v一个作业被分成多次调入内存运行一个作业被分成多次调入内存运行q对换性对换性v允许在作业的运行过程中进行换进、换出允许在作业的运行过程中

147、进行换进、换出q虚拟性虚拟性 v能够从逻辑上扩充内存容量,使用户所看到的能够从逻辑上扩充内存容量,使用户所看到的内存容量远大于实际内存容量内存容量远大于实际内存容量q以以CPUCPU时间和外存空间换取昂贵内存空间,这是时间和外存空间换取昂贵内存空间,这是操作系统中的操作系统中的资源转换技术资源转换技术吩漾走胃瞻梳衙覆瘴茨陪护稼图舰亮硷骑断社赴绥脏桃艰汕糖蔽喉赡治曾操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024139Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q程序的

148、装入和链接程序的装入和链接 q连续分配方式连续分配方式 q基本分页存储管理基本分页存储管理 q基本分段存储管理基本分段存储管理q虚拟存储器的基本概念虚拟存储器的基本概念q请求分页存储管理方式请求分页存储管理方式q页面置换算法页面置换算法q请求分段存储管理方式请求分段存储管理方式逞才稿式伶帖运我于背氰然憾成差稀啃重谭资江竭酥嘻塘笼拖炭噪迭煞观操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024140Operating SystemOperating System请求分页存储管理方式请求分页存储管理方式请求分页存储管理方式请求分页存储管理方式q请求分页中的硬件

149、支持请求分页中的硬件支持q内存分配策略和分配算法内存分配策略和分配算法q调页策略调页策略咒乔冒修日宜励氢芦弯侩呼陷索矗歇愉听桌掠年静珊札干囊囊拱骡蕊悯咆操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024141Operating SystemOperating System请求分页中的硬件支持请求分页中的硬件支持请求分页中的硬件支持请求分页中的硬件支持q系统系统需要解决的问题需要解决的问题v系统如何获知进程当前所需页面不在主存系统如何获知进程当前所需页面不在主存v当发现缺页时,如何把所缺页面调入主存当发现缺页时,如何把所缺页面调入主存v当主存中没有空闲的页

150、框时,为了要接受一当主存中没有空闲的页框时,为了要接受一个新页,需要个新页,需要把老的一页淘汰出去,根据什把老的一页淘汰出去,根据什么策略选择欲淘汰的页面么策略选择欲淘汰的页面叹劲夏吧衙纺坝递拥渍浚肾熄坡夜箱鸿柏笺枉统橇罐落塔缅每赔怂搞羞浦操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024142Operating SystemOperating System请求分页中的硬件支持请求分页中的硬件支持请求分页中的硬件支持请求分页中的硬件支持q页描述子的扩充(页表机制页描述子的扩充(页表机制 )v状态位状态位P(中断位)指示该页是在内存还是在(中断位)指示该页

151、是在内存还是在外存外存v访问位访问位A 用于记录本页在一段时间内用于记录本页在一段时间内被访问被访问的次数的次数或记录本页在最近多长时间或记录本页在最近多长时间未被访问未被访问v修改位修改位M 表示该页在内存中是否表示该页在内存中是否被修改过被修改过v外存地址外存地址 该页在外存上的地址,通常是物理该页在外存上的地址,通常是物理块号块号页号页号 物理块号物理块号 状态位状态位P 访问位访问位A 修改位修改位M外存地址外存地址 韧飘浙古闺磊缨梳循斧婴釉溉僚斋黔咸绰丽烟塔撬碱免倍糙缔弊牵找吼连操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024143Opera

152、ting SystemOperating System请求分页中的硬件支持请求分页中的硬件支持请求分页中的硬件支持请求分页中的硬件支持q缺页中断机构缺页中断机构v在请求分页系统中,每当所要访问的页面不在请求分页系统中,每当所要访问的页面不在内存时,便产生一在内存时,便产生一缺页中断。缺页中断。相应的中断相应的中断处理程序把控制转向缺页中断子程序,执行处理程序把控制转向缺页中断子程序,执行此子程序,即把所缺页面装入主存,然后处此子程序,即把所缺页面装入主存,然后处理机重新执行缺页时打断的指令。这时,就理机重新执行缺页时打断的指令。这时,就将顺利形成物理地址。将顺利形成物理地址。v缺页中断与一般中

153、断的区别缺页中断与一般中断的区别在指令执行期间产生和处理中断信号在指令执行期间产生和处理中断信号一条指令在执行期间可能产生多次缺页中一条指令在执行期间可能产生多次缺页中断,例如断,例如铺垂脑急莽页禄水瑞鼠夕给缚则芒揣取祥懦腑式股昧骨围雏走闲钩辈伤送操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024144Operating SystemOperating System请求分页中的硬件支持请求分页中的硬件支持请求分页中的硬件支持请求分页中的硬件支持 涉涉及及6次次缺缺页页中中断断的的指指令令枣序害犁澄飘残卜拨开挺搞绒唉迪选瘴蜕没遇敏禾霞篱址秸甘旭莫冠擦荣操作

154、系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024145Operating SystemOperating System请请求求分分页页中中的的地地址址变变换换过过程程缺页中断处理缺页中断处理保留保留CPU现场现场从外存中找到缺页从外存中找到缺页内存满否?内存满否?选择一页换出选择一页换出该页被修改否?该页被修改否?将该页写回外存将该页写回外存启动启动I/O硬件硬件将一页从外存换入内存将一页从外存换入内存修改页表修改页表否否是是是是否否页表项在快表中?页表项在快表中?CPU检索快表检索快表访问页表访问页表否否页在内存?页在内存?修改访问位和修改位修改访问位和

155、修改位形成物理地址形成物理地址地址变换结束地址变换结束否否页号页页号页表长度表长度? ?开始开始程序请求访问一页程序请求访问一页产生缺页中产生缺页中断请求调页断请求调页修改快表修改快表是是越界中断越界中断是是是是OS命令命令CPU从外存读缺页从外存读缺页手缸屋碗吠瑞戌湛苟歹逗闲鼠耘惫噎恨械仇熬迷挎妖查恩款逛僚吴贼兔析操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024146Operating SystemOperating System请求分页存储管理方式请求分页存储管理方式请求分页存储管理方式请求分页存储管理方式q请求分页中的硬件支持请求分页中的硬件支持

156、q内存分配策略和分配算法内存分配策略和分配算法q调页策略调页策略丸沏官太沙焚困阂豌锑募敲糜偶蛙槽龟馏坛挖唐咏杰湍俩酬敷呈冻光踩俊操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024147Operating SystemOperating System内存分配策略和分配算法内存分配策略和分配算法内存分配策略和分配算法内存分配策略和分配算法q最小物理块数的确定最小物理块数的确定 v指保证进程正常运行所需的指保证进程正常运行所需的最小物理块数最小物理块数。当系。当系统分配的物理块数少于此值时,进程将无法运行统分配的物理块数少于此值时,进程将无法运行v进程应获得的

157、进程应获得的最小物理块数最小物理块数与计算机的硬件结构与计算机的硬件结构有关,取决于指令的格式、有关,取决于指令的格式、 功能和寻址方式功能和寻址方式v对于对于单地址指令单地址指令且采用且采用直接寻址方式直接寻址方式的机器,则的机器,则所需最少所需最少2个个物理块。其中,一块存放指令页面,物理块。其中,一块存放指令页面,另一块则存放数据页面另一块则存放数据页面v允许间接寻址允许间接寻址的机器,至少要求有的机器,至少要求有3个个物理块物理块v对于长度是对于长度是两个或多于两个字节指令两个或多于两个字节指令的机器,其的机器,其指令本身可能跨两个页面,且源和目标地址所涉指令本身可能跨两个页面,且源和

158、目标地址所涉及的区域也可能跨两个页面,至少需要及的区域也可能跨两个页面,至少需要6个个物理物理块块株撬啮热捎竿央麦诚橙债谗腹爬盯么辱冕坞择锣妓每怂桶朝竟澎剔狗亢很操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024148Operating SystemOperating System内存分配策略和分配算法内存分配策略和分配算法内存分配策略和分配算法内存分配策略和分配算法q物理块的分配策略物理块的分配策略 v在请求分页系统中,可采取两种内存分配策在请求分页系统中,可采取两种内存分配策略,即略,即固定固定和和可变可变分配策略。在进行置换时,分配策略。在进行置换

159、时, 也可采取两种策略,即也可采取两种策略,即全局置换全局置换和和局部置换局部置换。于是可组合出以下三种适用的策略于是可组合出以下三种适用的策略固定分配局部置换固定分配局部置换(Fixed Allocation, Local Replacement) 可变分配全局置换可变分配全局置换(Variable Allocation, Global Replacement) 可变分配局部置换可变分配局部置换(Variable Allocation, Local Replacemen问题:分配块数难确定,太问题:分配块数难确定,太少,缺页频繁,吞吐量降低;少,缺页频繁,吞吐量降低;太多,内存驻留进程数减少

160、,太多,内存驻留进程数减少,CPU或其它资源可能空闲或其它资源可能空闲先分配给各进程一定数先分配给各进程一定数的物理块,系统有一空的物理块,系统有一空闲物理块队列,缺页时闲物理块队列,缺页时从空闲队列取,若空闲从空闲队列取,若空闲队列空时,在选页调出队列空时,在选页调出先分配给各进程一定先分配给各进程一定数的物理块,缺页时数的物理块,缺页时从该进程在内存的页从该进程在内存的页选一换出,若其频繁选一换出,若其频繁缺页,系统再分配若缺页,系统再分配若干附加物理块干附加物理块炳姚艰唇欠止汹留千驱粤衣膏撰七虏棱佬论谍搽片蓟砖沽示嘶题迪演晓枉操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章

161、存储器管理7/26/2024149Operating SystemOperating System内存分配策略和分配算法内存分配策略和分配算法内存分配策略和分配算法内存分配策略和分配算法q物理块分配算法物理块分配算法v平均分配算法平均分配算法这是这是将系统中所有可供分配的物理块,平将系统中所有可供分配的物理块,平均分配给各个进程均分配给各个进程 例如,当系统中有例如,当系统中有100个物理块,有个物理块,有5个个进程在运行时,每个进程可分得进程在运行时,每个进程可分得20个物理个物理块。这种方式貌似公平,但实际上是不公块。这种方式貌似公平,但实际上是不公平的,因为它未考虑到各进程本身的大小。平

162、的,因为它未考虑到各进程本身的大小。如有一个进程其大小为如有一个进程其大小为200页,只分配给页,只分配给它它20个块,这样,它必然会有很高的缺页个块,这样,它必然会有很高的缺页率;而另一个进程只有率;而另一个进程只有10页,却有页,却有10个个物理块闲置未用物理块闲置未用伍椰各利遮宅襄铲唆哟隘沫奏军闲甫避疽硫咏遭咖矩郧刘瞩从在轰滴扑啡操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024150Operating SystemOperating System内存分配策略和分配算法内存分配策略和分配算法内存分配策略和分配算法内存分配策略和分配算法v按比例分配算

163、法按比例分配算法 这这是是根根据据进进程程的的大大小小按按比比例例分分配配物物理理块块的的算算法法。如如果果系系统统中中共共有有n个个进进程程,每每个个进进程程的的页面数为页面数为Si,则系统中各进程页面数的总和为:,则系统中各进程页面数的总和为: 又又假假定定系系统统中中可可用用的的物物理理块块总总数数为为m,则则每每个个进程所能分到的物理块数为进程所能分到的物理块数为bi,将有,将有: b应该取整,它应该取整,它必须大于最小物理块数必须大于最小物理块数莉伯疽念渍痪紊吓销朋平中替恒唐屯狞饰拈摈凯右嘿杨甄粟约要灾儡红池操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/

164、26/2024151Operating SystemOperating System内存分配策略和分配算法内存分配策略和分配算法内存分配策略和分配算法内存分配策略和分配算法v考虑优先权的分配算法考虑优先权的分配算法在实际应用中,为了照顾到在实际应用中,为了照顾到重要的、紧迫重要的、紧迫的用户程序能尽快地完成,的用户程序能尽快地完成, 应为它分配较应为它分配较多的内存空间多的内存空间通常采取的方法是把内存中可供分配的所通常采取的方法是把内存中可供分配的所有物理块分成有物理块分成两部分两部分:一部分:一部分按比例按比例地分地分配给各进程;另一部分则根据各进程的配给各进程;另一部分则根据各进程的优优

165、先权先权,适当地增加适当地增加其相应份额后,分配给其相应份额后,分配给各进程各进程在重要的系统,如在重要的系统,如实时控制系统实时控制系统,则可能,则可能是是完全按优先权完全按优先权为各进程分配其物理块的为各进程分配其物理块的秧想位尧咱萌廊宫邮吸汰频持曲厩守本耸啸策余思兴宋冀皖杯愉褐舜眺市操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024152Operating SystemOperating System请求分页存储管理方式请求分页存储管理方式请求分页存储管理方式请求分页存储管理方式q请求分页中的硬件支持请求分页中的硬件支持q内存分配策略和分配算法内存

166、分配策略和分配算法q调页策略调页策略抵据赡性蜘肢兰憋袭逸藕缆恕萄芝沤棒惰邯桅辉血喳彬杜憎奇麦盯折式酋操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024153Operating SystemOperating System调页策略调页策略调页策略调页策略q何时调入页面何时调入页面v预调页策略预调页策略采用一种以预测为基础的预调页策略,将采用一种以预测为基础的预调页策略,将那些预计在不久之后便会被访问的页面预那些预计在不久之后便会被访问的页面预先调入内存,成功率先调入内存,成功率50%v请求调页策略请求调页策略当进程在运行中需要访问某部分程序和数当进程在运行

167、中需要访问某部分程序和数据时,若发现其所在的页面不在内存,便据时,若发现其所在的页面不在内存,便提出请求,由提出请求,由OS将其所需页面调入内存将其所需页面调入内存目前的虚拟存储中大多采用此种策略目前的虚拟存储中大多采用此种策略瞩开挽拣开长凉擂萤丧曙契聋贩抉蛀安仅藏脱罪六别箕顶价慧熏轿赎颧靡操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024154Operating SystemOperating System调页策略调页策略调页策略调页策略q从何处调入页面从何处调入页面v在请求分页系统中的在请求分页系统中的外存外存分为两部分:用于存放分为两部分:用于存放

168、文件的文件的文件区文件区和用于存放对换页面的和用于存放对换页面的对换区对换区。v对换区的磁盘对换区的磁盘I/O速度应比文件区的高速度应比文件区的高v每当发生缺页请求时,系统应从何处将缺页调入每当发生缺页请求时,系统应从何处将缺页调入内存,可分成如下三种情况:内存,可分成如下三种情况:系统拥有系统拥有足够足够的对换区空间,这时可以的对换区空间,这时可以全部从全部从对换区对换区调入所需页面,以提高调页速度调入所需页面,以提高调页速度系统系统缺少足够缺少足够的对换区空间,这时凡是的对换区空间,这时凡是不不会会被被修改修改的文件,都直接的文件,都直接从文件区从文件区调入调入UNIX方式。由于与进程有关

169、的文件都放在文方式。由于与进程有关的文件都放在文件区,故凡是件区,故凡是未运行过未运行过的页面,都应的页面,都应从文件区从文件区调入调入惮狈匝羌浆搽口易瞬辰趴伺敬谱喳喻亏削肖草陇话匹湾醛呈撞组凛愉铡灸操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024155Operating SystemOperating System调页策略调页策略调页策略调页策略q页面调入过程页面调入过程v每当程序所要访问的页面未在内存时,便向每当程序所要访问的页面未在内存时,便向CPU发出发出一一缺页中断缺页中断,中断处理程序首先保留,中断处理程序首先保留CPU环境,分析环境,分析

170、中断原因后,中断原因后, 转入缺页中断处理程序。该程序通过查转入缺页中断处理程序。该程序通过查找页表,得到该页在外存的物理块地址找页表,得到该页在外存的物理块地址v若此时内存能容纳新页,则启动磁盘若此时内存能容纳新页,则启动磁盘I/O将所缺之页调将所缺之页调入内存,然后修改页表入内存,然后修改页表v若内存已满,则须先按照某种置换算法从内存中选出若内存已满,则须先按照某种置换算法从内存中选出一页准备换出:一页准备换出:页页未被修改未被修改过,可不必将该页写回磁盘过,可不必将该页写回磁盘页页已被修改已被修改过,过, 则必须将它则必须将它写回磁盘写回磁盘,然后再把所,然后再把所缺的页调入内存,缺的页

171、调入内存, 并修改页表中的相应表项,置其并修改页表中的相应表项,置其状态位为状态位为“1”,并将此页表项,并将此页表项写入快表中写入快表中。v在缺页调入内存后,利用修改后的页表,去形成所要在缺页调入内存后,利用修改后的页表,去形成所要访问数据的物理地址,再去访问内存数据访问数据的物理地址,再去访问内存数据弓牢轩屋词严惭芯妙诛宜詹渣冒堵怂术丈筛脏妓荚鞠西兄宫庇拈反起沦苗操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024156Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q程

172、序的装入和链接程序的装入和链接 q连续分配方式连续分配方式 q基本分页存储管理基本分页存储管理 q基本分段存储管理基本分段存储管理q虚拟存储器的基本概念虚拟存储器的基本概念q请求分页存储管理方式请求分页存储管理方式q页面置换算法页面置换算法q请求分段存储管理方式请求分段存储管理方式妻逞倒漆侩峻量铃逐阶第突兰裙董魁主藕乙亡械砰客溜堑暑帧矽皂达删殴操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024157Operating SystemOperating System页面置换算法页面置换算法页面置换算法页面置换算法q最佳置换算法和先进先出置换算法最佳置换算法和

173、先进先出置换算法q最近最久未使用(最近最久未使用(LRU)置换算法)置换算法qCLOCK置换算法置换算法q其它置换算法其它置换算法滥耙伟疑呈西雏赠谊锁轮秉囤睛瘤盒撕尽脉踩痉脱癸寅园烛少橡渐景徐妆操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024158Operating SystemOperating System最佳置换算法和先进先出置换算法最佳置换算法和先进先出置换算法最佳置换算法和先进先出置换算法最佳置换算法和先进先出置换算法q最佳最佳(Optimal)置换算法置换算法v最佳置换算法是由最佳置换算法是由Belady于于1966年提出的一年提出的一种种

174、理论上理论上的算法的算法v 其其所选择的被淘汰页面,将是所选择的被淘汰页面,将是以后永不使用以后永不使用的,的, 或许是在或许是在最长最长(未来未来)时间时间内内不再被访问不再被访问的页面的页面v采用最佳置换算法,通常可保证获得最低的缺采用最佳置换算法,通常可保证获得最低的缺页率页率团询桥史曰娜灯焉刚阶抵拉堪股帅搞种宵售缴誉搁癌伸凯甚忽杀走吻斗起操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024159Operating SystemOperating System最佳置换算法和先进先出置换算法最佳置换算法和先进先出置换算法最佳置换算法和先进先出置换算法最

175、佳置换算法和先进先出置换算法例例:假假定定系系统统为为某某进进程程分分配配了了三三个个物物理理块块, 并并考考虑虑有有以以下下的的页页面面号号引引用用串串:7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1进进程程运运行行时时, 先先将将7,0,1三三个个页页面面装装入入内内存存。 以以后后,当当进进程程要要访访问问页页面面2时时将将会会产产生生缺缺页页中中断断。此此时时OS根根据据最最佳佳置置换换算算法法,将将选选择择页页面面7予以淘汰予以淘汰770701201203243201701引用率引用率70120304230321201701页框页框( (物理块)物理块

176、)203 利用最佳页面置换算法时的置换图利用最佳页面置换算法时的置换图 察琳邱呜各水拒唇攀舱辆娄折作银晦谅痰扫费茎死肝辛撬鱼服梨九三译袒操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024160Operating SystemOperating System最佳置换算法和先进先出置换算法最佳置换算法和先进先出置换算法最佳置换算法和先进先出置换算法最佳置换算法和先进先出置换算法q先进先出先进先出(FIFO)页面置换算法页面置换算法 选择在内存中选择在内存中驻留时间最长驻留时间最长的页并淘汰之的页并淘汰之7707012012314300137022304204

177、23023012712701页框页框引用率引用率701203042303212017011 利用利用FIFO置换算法时的置换图置换算法时的置换图 桑恕贼仕褂纺涩阉修厩仓滤拯腋碌首角顺响棱鲜罗肖捶瓢洞谰恭聘产鼻注操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024161Operating SystemOperating System页面置换算法页面置换算法页面置换算法页面置换算法q最佳置换算法和先进先出置换算法最佳置换算法和先进先出置换算法q最近最久未使用(最近最久未使用(LRU)置换算法)置换算法qCLOCK置换算法置换算法q其它置换算法其它置换算法犯鬼酋

178、铭坦嵌研炭纹豆张舀靡是鹏仍褂浸钎尽刷的爸帮剑榔涉宏景溅龚里操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024162Operating SystemOperating System最近最久未使用(最近最久未使用(最近最久未使用(最近最久未使用(LRULRU)置换算法)置换算法)置换算法)置换算法qLRU(Least Recently Used)置换算法的描述置换算法的描述 选择选择最后一次访问时间距离当前时间最长最后一次访问时间距离当前时间最长的一的一页并淘汰之。即淘汰没有使用的时间最长的页。页并淘汰之。即淘汰没有使用的时间最长的页。实现代价很高(时间戳或

179、硬件方法)实现代价很高(时间戳或硬件方法) LRU页面置换算法页面置换算法 引用率引用率70770170122010320304403230321132201710701页框页框402432032102淤钡淋盛灌融错甚役碳菜盯粉捎吞逝潦铣尊婿茂租粟宙劝城提稚粒膘赚婚操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024163Operating SystemOperating System最近最久未使用(最近最久未使用(最近最久未使用(最近最久未使用(LRULRU)置换算法)置换算法)置换算法)置换算法qLRU置换算法的硬件支持置换算法的硬件支持v寄存器寄存器

180、为了记录某进程在内存中各页的使用情况,为了记录某进程在内存中各页的使用情况,须为每个在内存中的页面配置一个移位寄须为每个在内存中的页面配置一个移位寄存器,可表示为存器,可表示为 访问访问时将时将Rn-1位置成位置成1,定时信号,定时信号每隔一时每隔一时间间隔右移一位间间隔右移一位,则具有,则具有最小数值最小数值的寄存的寄存器所对应的页面,器所对应的页面,就是最近最久未使用就是最近最久未使用的的页面页面R=Rn-1Rn-2Rn-3 R2R1R0 岸掇笔喳须絮律贾术罩靖髓侣嘻摇悦掖吞戮摊涵洒缨帧掏订蜂犁徘粪所挫操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/202

181、4164Operating SystemOperating System最近最久未使用(最近最久未使用(最近最久未使用(最近最久未使用(LRULRU)置换算法)置换算法)置换算法)置换算法 某进程具有某进程具有8个页面时的个页面时的LRU访问情况访问情况 应置换应置换的页的页沂惫笋戳逢级设移黎耗翌矾旋豫丹镁膘彼贬捡卷郧勘搓抨祸隋榨候裸乍腐操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024165实页实页R7R6R5R4R3R2R1R0101010010210101100实页实页R7R6R5R4R3R2R1R010010100102010101100t0t1

182、实页实页R7R6R5R4R3R2R1R010001010012001010110t2实页实页R7R6R5R4R3R2R1R0110010100200101011访问访问1实页实页R7R6R5R4R3R2R1R010100101002000101011t3禽捞卢座搅奖皿佯担磐汞混丹三滚诀艾睁超尸励媳盆社孵浆稿可沮饺摹腿操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024166Operating SystemOperating System最近最久未使用(最近最久未使用(最近最久未使用(最近最久未使用(LRULRU)置换算法)置换算法)置换算法)置换算法v栈栈

183、进程访问某页时,将该页面的页号从栈中进程访问某页时,将该页面的页号从栈中移出,再压入栈顶移出,再压入栈顶 用栈保存当前使用页面时栈的变化情况用栈保存当前使用页面时栈的变化情况 4740747041704017410742107412074210746210747071012126肌葛倘俱虑挨澡诬迎牧沃燃摇繁官曰晴磁止搏乐禄迢聪搭鸯乞垮况奏贡民操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024167Operating SystemOperating System页面置换算法页面置换算法页面置换算法页面置换算法q最佳置换算法和先进先出置换算法最佳置换算法和先

184、进先出置换算法q最近最久未使用(最近最久未使用(LRU)置换算法)置换算法qCLOCK置换算法置换算法q其它置换算法其它置换算法嗓谆跺豌悲趋盒馋捻逞玫孕徽壬探钨冉妄倾寿汇疚独膨慈派尊旧低摆唇租操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024168Operating SystemOperating SystemCLOCKCLOCK置换算法置换算法置换算法置换算法q简单的简单的CLOCK置换算法(近似的置换算法(近似的LRU算法)算法) v当采用简单的当采用简单的CLOCK算法时,只需为每页设算法时,只需为每页设置一位置一位访问位访问位,再将内存中的,再将

185、内存中的所有页面都通所有页面都通过链接指针链接过链接指针链接成一个循环队列成一个循环队列v当某页被访问时,其访问位被当某页被访问时,其访问位被置置1v置换算法在选择一页淘汰时,只需检查页的置换算法在选择一页淘汰时,只需检查页的访问位,是访问位,是0换出,是换出,是1重新置重新置0且暂不换出,且暂不换出,再按再按FIFO检查下一个页面。检查到最后一个检查下一个页面。检查到最后一个页面,若其访问位仍为页面,若其访问位仍为1,则,则再返到队首再返到队首检查。检查。v由于该算法是循环地检查各页面的访问情况,由于该算法是循环地检查各页面的访问情况,故称为故称为CLOCK算法算法,置换的是未使用过的页,置

186、换的是未使用过的页,又称为又称为最近未用算法最近未用算法NRU(Not Recently Used)面帘拭售财猿戳曲俞称潍湾灸唉毫腋迟消满焰兜童沾趣激颜川趁颁谢举藉操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024169Operating SystemOperating SystemCLOCKCLOCK置换算法置换算法置换算法置换算法 简单简单Clock置换算法的流程和示例置换算法的流程和示例 注意:是循环注意:是循环队列!队列!培囱袍螟牙乖恐袭吸头木怠萌昼嫡空摇然唱冕碰惕言兹锗哪耀傅墨艾随谢操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章

187、存储器管理7/26/2024170Operating SystemOperating SystemCLOCKCLOCK置换算法置换算法置换算法置换算法q改进型改进型Clock置换算法置换算法v考虑考虑使用情况使用情况和和置换代价,置换代价,换出的最好是未换出的最好是未使用且未被修改过的使用且未被修改过的v由由访问位访问位A和和修改位修改位M组合:组合:1类类(A=0, M=0):表示该页最近既未被访表示该页最近既未被访问,又未被修改,是最佳淘汰页问,又未被修改,是最佳淘汰页2类类(A=0, M=1):表示该页最近未被访问,:表示该页最近未被访问,但已被修改,并不是很好的淘汰页但已被修改,并不是

188、很好的淘汰页3类类(A=1, M=0):最近已被访问,:最近已被访问, 但未但未被修改,被修改, 该页有可能再被访问该页有可能再被访问4类类(A=1, M=1):最近已被访问且被修改,:最近已被访问且被修改,该页可能再被访问该页可能再被访问轴伺招厕忙速扰儿列兴薄惕锨锡趁绊瓷携屹檬润与磊拳乍税樟国昨怯艇片操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024171Operating SystemOperating SystemCLOCKCLOCK置换算法置换算法置换算法置换算法v其执行过程可分成以下三步其执行过程可分成以下三步(1) 从指针所指示的当前位置开始

189、,从指针所指示的当前位置开始, 扫描循环队扫描循环队列,列, 寻找寻找A=0且且M=0的第一类页面,的第一类页面, 将所遇到将所遇到的第一个页面作为所选中的淘汰页。的第一个页面作为所选中的淘汰页。 在在第一次扫第一次扫描期间不改变访问位描期间不改变访问位A(2) 如果第一步失败,即查找一周后未遇到第一如果第一步失败,即查找一周后未遇到第一类页面,类页面, 则开始第二轮扫描,则开始第二轮扫描,寻找寻找A=0且且M=1的第二类页面,将所遇到的第一个这类页面作为的第二类页面,将所遇到的第一个这类页面作为淘汰页。在第二轮扫描期间,淘汰页。在第二轮扫描期间,将所有扫描过的页将所有扫描过的页面的访问位面的

190、访问位A都置都置0(3) 如果第二步也失败,亦即未找到第二类页面,如果第二步也失败,亦即未找到第二类页面,则将则将指针返回到开始指针返回到开始的位置,并将的位置,并将所有的访问位所有的访问位A复复0。 然后然后重复第一步重复第一步,如果仍失败,必要时再,如果仍失败,必要时再重复第二步,此时就一定能找到被淘汰的页重复第二步,此时就一定能找到被淘汰的页搀谋恰诧澳寻戴奖羡雹署予佛氟胞嗽奸驮瓷迄醉墩抹姚侨同痹链足租鞋靴操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024172Operating SystemOperating System改进型改进型改进型改进型C

191、lockClock置换算法置换算法置换算法置换算法- -示例示例示例示例页号页号块号块号AM05001301210103111141411最佳淘汰页最佳淘汰页次佳淘汰页次佳淘汰页秩睹征危壳本揩耗框狭歉毯拖磐隙惹仿番腔瞎导碗栓哺晋陛钙彦条伤炯巩操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024173Operating SystemOperating System页面置换算法页面置换算法页面置换算法页面置换算法q最佳置换算法和先进先出置换算法最佳置换算法和先进先出置换算法q最近最久未使用(最近最久未使用(LRU)置换算法)置换算法qCLOCK置换算法置换算法

192、q其它置换算法其它置换算法傈践唯柬低歌胰菌扮郊慰蠕战耀苔谬哇潮必常村灰守沏处锹邹吱矩姿复穿操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024174Operating SystemOperating System其它置换算法其它置换算法其它置换算法其它置换算法q最少使用最少使用(LFU: Least Frequently Used)置换置换算法算法v为内存中的每个页面设置一个为内存中的每个页面设置一个移位寄存器移位寄存器,用来记,用来记录该页面录该页面被访问的频率被访问的频率v该算法选择在最近使用最少的页面作为淘汰页该算法选择在最近使用最少的页面作为淘汰页

193、v与最近最少用算法与最近最少用算法LRU的区别的区别只考虑一段时间内使用的次数,而不管其使用的只考虑一段时间内使用的次数,而不管其使用的时间时间000001110001110011100000这种算法并不能真正反映出页面的使用情况,因在每一时间这种算法并不能真正反映出页面的使用情况,因在每一时间间隔内只是用寄存器的一位来记录页的使用情况,因此访问间隔内只是用寄存器的一位来记录页的使用情况,因此访问1次和次和10000次是等效的次是等效的嘶铱冯裁博绊丝躬艾矩钢拈揭琶令大爆佣寡与侥铲跑培敏外头勋唯稗广崭操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024175

194、Operating SystemOperating System其它置换算法其它置换算法其它置换算法其它置换算法q页面缓冲算法页面缓冲算法(PBA: Page Buffering Algorithm)v采用了采用了可变分配可变分配和和局部置换局部置换方式,置换算法采用方式,置换算法采用FIFOv算法规定算法规定将一个被淘汰的页放入将一个被淘汰的页放入两个链表中的一个,两个链表中的一个,即如果页面即如果页面未被修改未被修改,就将它直接,就将它直接放进空闲链放进空闲链表中;表中;否则,便放入否则,便放入已修改页面的链已修改页面的链表中表中 空闲链表空闲链表已修改链表已修改链表骡咨匀辽寥绪菇崇斗亏袒

195、秉量撰巡紧涛畸睡憾代跟现转范排泰当省百辆枪操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024176Operating SystemOperating System页面置换算法页面置换算法页面置换算法页面置换算法q影响缺页次数的因素影响缺页次数的因素v 分配给进程的分配给进程的物理页面数物理页面数v 页面本身的页面本身的大小大小v 程序的程序的编制方法编制方法v 页面页面淘汰算法淘汰算法富咽站瑚荤吏了蛊甄俱秉赚劣吓准凤盘梗抓毋之寂巩惮嫌茄面撤汇扒鹏政操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024177Operat

196、ing SystemOperating System页面置换算法页面置换算法页面置换算法页面置换算法q性能问题性能问题v颠簸(抖动)颠簸(抖动) 在虚存中,页面在内存与外存之间在虚存中,页面在内存与外存之间频繁调度频繁调度,以至于调度页面所需时间比进程实际运行的时间以至于调度页面所需时间比进程实际运行的时间还多,此时系统效率急剧下降,甚至导致系统崩还多,此时系统效率急剧下降,甚至导致系统崩溃。这种现象称为颠簸或抖动溃。这种现象称为颠簸或抖动v原因原因页面淘汰算法不合理页面淘汰算法不合理分配给进程的物理页面数太少分配给进程的物理页面数太少曝烬复吏综熙守约哭人提眷傀图崩锭妇演席宰点娘妆倾袖棒幌或褂

197、榷芦艳操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024178Operating SystemOperating System第四章第四章第四章第四章 存储器管理存储器管理存储器管理存储器管理q程序的装入和链接程序的装入和链接 q连续分配方式连续分配方式 q基本分页存储管理基本分页存储管理 q基本分段存储管理基本分段存储管理q虚拟存储器的基本概念虚拟存储器的基本概念q请求分页存储管理方式请求分页存储管理方式q页面置换算法页面置换算法q请求分段存储管理方式请求分段存储管理方式锥倍讲陨式筏报猜童宗颅挨省鲜熔絮瘸派评均蛋提螟奔跑艇竿瑞埂强客校操作系统第四章课件

198、-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024179Operating SystemOperating System请求分段存储管理方式请求分段存储管理方式请求分段存储管理方式请求分段存储管理方式q请求分段中的硬件支持请求分段中的硬件支持q分段的共享与保护分段的共享与保护媒溜袍掀夕募量配中喳渔水轻氛韦七洁烦拇亡蚜化挚丽埋倔岂电然厚练涉操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024180Operating SystemOperating System请求分段中的硬件支持请求分段中的硬件支持请求分段中的硬件支持请求分段中的硬件支

199、持q段表机制段表机制v存取方式存取方式 用于标识本分段存取属性是只执行、只读还用于标识本分段存取属性是只执行、只读还是允许读是允许读/写写v存在位存在位P 用于指示该段是否已调入内存用于指示该段是否已调入内存v访问字段访问字段A 用于记录本页在一段时间内被访问的次数,用于记录本页在一段时间内被访问的次数,或记录本页在最近多长时间未被访问或记录本页在最近多长时间未被访问v修改位修改位M 表示该段在调入内存后是否被修改过表示该段在调入内存后是否被修改过v外存地址外存地址 本段在外存上的地址,盘块块号本段在外存上的地址,盘块块号v增补位增补位 本段在运行过程中是否做过动态增长本段在运行过程中是否做过

200、动态增长段名段名 段长段长 段的基址段的基址 存取方式存取方式 访问字访问字段段A 修改位修改位M 存在位存在位P 增补位增补位 外存始外存始址址 汁险立椅棺癸淖贯最矣橙奠婚庐亩戚马酌尹雇案掳座遣丫誓雅对褒亨棋症操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024181Operating SystemOperating System请求分段中的硬件支持请求分段中的硬件支持请求分段中的硬件支持请求分段中的硬件支持 请求分段系统中的中断处理过程请求分段系统中的中断处理过程揍迅粒通桥支洱碘弓愤棺失羔枉朴椅间拱淡站要遭坟娟与吝屋杖茶辩活膜操作系统第四章课件-第四章

201、存储器管理操作系统第四章课件-第四章存储器管理7/26/2024182Operating SystemOperating System请求分段中的硬件支持请求分段中的硬件支持请求分段中的硬件支持请求分段中的硬件支持 请请求求分分段段系系统统的的地地址址变变换换过过程程盼嗡望偏敷檄墅榆见标闯娃享磁床饱求垛绪兵箍麦译惟悠两湘绽潍束野注操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024183Operating SystemOperating System请求分段存储管理方式请求分段存储管理方式请求分段存储管理方式请求分段存储管理方式q请求分段中的硬件支持请求分

202、段中的硬件支持q分段的共享与保护分段的共享与保护酿骤盗歌牺从乱犯夯初酸澄攀频蒸觅逃诗哭汐守醋挖哗储钳垫差瓮光锡畜操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024184Operating SystemOperating System分段的共享与保护分段的共享与保护分段的共享与保护分段的共享与保护q共享段表共享段表v为了实现分段共享,可在系统中配置一张共为了实现分段共享,可在系统中配置一张共享段表所有各共享段都在共享段表中占有一享段表所有各共享段都在共享段表中占有一表项表项v共享进程计数共享进程计数count记录有多少个进程需要共享该分段记录有多少个进程需

203、要共享该分段v存取控制字段存取控制字段对于一个共享段,应给不同的进程以不同对于一个共享段,应给不同的进程以不同的权限的权限v段号段号对于一个共享段,不同的进程可以各用不对于一个共享段,不同的进程可以各用不同的段号去共享该段同的段号去共享该段辟裤锐眩膳酿蛀屑痘汲票笑噬框苏约皇蹬若驱蜜褪揖扦洱暮黎琉锌舶蔓涧操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024185Operating SystemOperating System分段的共享与保护分段的共享与保护分段的共享与保护分段的共享与保护段名段名段长段长内存始址内存始址状态状态外存始址外存始址共享进程计数共享

204、进程计数 count状态状态进程名进程名进程号进程号段号段号存取控制存取控制共享段表共享段表露埔猩嘶丝铁谅妨伊虽厕右谆腔亚难秽踪违哥欢屁毕朗淬棘黑绊剑乓哑粱操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024186Operating SystemOperating System分段的共享与保护分段的共享与保护分段的共享与保护分段的共享与保护q共享段分配与回收共享段分配与回收v共享段的分配共享段的分配对第一个请求使用该共享段的进程,由系统为该共对第一个请求使用该共享段的进程,由系统为该共享段分配一物理区,再把共享段调入该区,同时将享段分配一物理区,再把共享段

205、调入该区,同时将该区的始址填入请求进程的段表的相应项中,还须该区的始址填入请求进程的段表的相应项中,还须在共享段表中增加一表项,填写有关数据,把在共享段表中增加一表项,填写有关数据,把count置为置为1;当又有其它进程需要调用该共享段时,无须再为该当又有其它进程需要调用该共享段时,无须再为该段分配内存,而只需在调用进程的段表中,增加一段分配内存,而只需在调用进程的段表中,增加一表项,填写该共享段的物理地址;在共享段的段表表项,填写该共享段的物理地址;在共享段的段表中,填上调用进程的进程名、存取控制等,再执行中,填上调用进程的进程名、存取控制等,再执行count =count+1操作,以表明有

206、两个进程共享该操作,以表明有两个进程共享该段段写疏空庆碟李畴眯迎董称亨拾诲尼贼霞猴艳舱葱准凡驮牛摄菇啡贮吹厚凰操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024187Operating SystemOperating System分段的共享与保护分段的共享与保护分段的共享与保护分段的共享与保护q共享段分配与回收共享段分配与回收v共享段的回收共享段的回收撤消在该进程段表中共享段所对应的表项撤消在该进程段表中共享段所对应的表项执行执行count =count-1操作操作出告矮猖装戌波夫襟召生钝惊会缔想钧音竟敞对涝耗簇携辉魁拳拓亏心铱操作系统第四章课件-第四章

207、存储器管理操作系统第四章课件-第四章存储器管理7/26/2024188Operating SystemOperating System分段的共享与保护分段的共享与保护分段的共享与保护分段的共享与保护q分段保护分段保护v越界检查越界检查 v存取控制检查存取控制检查 只读只读 只执行只执行 读读/写写 v环保护机构环保护机构 低编号的环具有高优先权,操作系统位于最核心低编号的环具有高优先权,操作系统位于最核心环环一个程序可以访问驻留在相同环或较低特权环中一个程序可以访问驻留在相同环或较低特权环中的数据的数据一个程序可以调用驻留在相同环或较高特权环中一个程序可以调用驻留在相同环或较高特权环中的服务的

208、服务币彪呸识操柏砾猛羚肺背饰瘩域岂还敢哼爹棒救绍毁注密涎熟礼艺诉侮蚀操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024189Operating SystemOperating System分段的共享与保护分段的共享与保护分段的共享与保护分段的共享与保护 环保护机构环保护机构 肩觉暑轿探蹿牛沸因亏查热辞献郝簇紊皆躬睫冀厦隧捡静婿跨狄爹瞎辨姑操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024190Operating SystemOperating System作业作业作业作业qp101, 5、6、9、12、16、23、

209、26 q交作业时间交作业时间v第四章结束后第四章结束后q提交方式提交方式1ve_mail to 123_v主题:主题:*班班*号号*章作业章作业v附件文件名:附件文件名: 姓名姓名+日期日期.doc or ppt (如:张三(如:张三040301.doc) q提交方式提交方式2v单页纸,写清班级、学号、姓名、日期单页纸,写清班级、学号、姓名、日期v自留备份自留备份渐窥天迫煞擞纂仗届蚊频删让螟烫领桐寞休陛损狐个觅钧颐概船困嚼价滩操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理7/26/2024191匹餐卒田泪帖浚抖尸枪域玫脂局酝蔑尊络镑闻当剧四档维槛翰楞起鸟楷赠操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理THE END腑搂躲访锰载坝碗爬阉辨睡声诺蕊瘩抚养弓粟蜗勿覆擎露乎铬镣两恋尔芜操作系统第四章课件-第四章存储器管理操作系统第四章课件-第四章存储器管理

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

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