电子科技大学计算机操作系统―第四章存储管理课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《电子科技大学计算机操作系统―第四章存储管理课件.pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子科技 大学计算机 操作系统 第四 存储 管理 课件
- 资源描述:
-
1、许家珆4.1 存储管理的基本概念(一)存储管理的基本概念(一)这里只讨论内存管理,外存管理在设备中讨论。这里只讨论内存管理,外存管理在设备中讨论。存储器是价格昂贵,数量不足的资源。存储管存储器是价格昂贵,数量不足的资源。存储管理的效率直接影响到系统的性能,也最能够反映一理的效率直接影响到系统的性能,也最能够反映一个操作系统的特色。因此,存储管理的问题是操作个操作系统的特色。因此,存储管理的问题是操作系统的核心问题。系统的核心问题。存储管理的目的存储管理的目的1.1.为用户使用存储器提供方便。为用户使用存储器提供方便。在逻辑空间编程在逻辑空间编程 提供足够大的存储空间提供足够大的存储空间2.2.
2、充分发挥内存的利用率。充分发挥内存的利用率。许家珆4.1 存储管理的基本概念存储管理的基本概念存储管理的功能存储管理的功能 内存分配内存分配 内存保护内存保护 地址映射地址映射 内存扩充内存扩充 内存分配内存分配 内存保护内存保护 地址映射地址映射 内存扩充内存扩充讨论内容讨论内容装入模块装入模块装入装入内内 存存装入程序链接链接装入装入 链接链接 运行运行编译编译 内存分配内存分配许家珆4.1 存储管理的基本概念存储管理的基本概念 调入策略调入策略 确定装入时机确定装入时机 (预调、请调)(预调、请调)放置策略放置策略 如何分配空闲内存区的原则如何分配空闲内存区的原则(算法、连续、(算法、连
3、续、不连续)不连续)淘汰策略淘汰策略 当使用当使用请调请调策略时,确定淘汰哪些信息,策略时,确定淘汰哪些信息,以腾出内存空间,以便调入需要的信息。以腾出内存空间,以便调入需要的信息。可分为相等和不相等的内存块可分为相等和不相等的内存块内存分配与回收内存分配与回收分配策略分配策略内存划分内存划分内存回收内存回收回收进程所释放的存储空间回收进程所释放的存储空间存储管理的功能存储管理的功能许家珆4.1 存储管理的基本概念存储管理的基本概念 1.地址空间和存储空间地址空间和存储空间 程序经过编译所形成的目标代码,一般使用程序经过编译所形成的目标代码,一般使用相相对地址;对地址;即其首地址为即其首地址为
4、 0 ,其它指令的地址是相,其它指令的地址是相对首地址而定。相对地址又称为对首地址而定。相对地址又称为逻辑地址逻辑地址。该目标代码相对地址的全体称为程序的该目标代码相对地址的全体称为程序的地址空地址空间间,或或逻辑空间。逻辑空间。实际的内存物理地址的集合称为实际的内存物理地址的集合称为物理空间物理空间,或存,或存储空间。储空间。地址映射地址映射存储管理的功能存储管理的功能许家珆4.1 存储管理的基本概念存储管理的基本概念 2、重定位重定位(RelocationRelocation)为了保证程序的执行,操作系统必须将执行过程要为了保证程序的执行,操作系统必须将执行过程要访问的逻辑地址转换为物理地
5、址。这种地址的转换过程访问的逻辑地址转换为物理地址。这种地址的转换过程称为称为重定位重定位或地址或地址映射。映射。地址映射地址映射存储管理的功能存储管理的功能重定位分为重定位分为静态、动态静态、动态两种:两种:静态静态重定位重定位 程序装入过程中一次完成地址程序装入过程中一次完成地址映射。运行过程中,地映射。运行过程中,地址空间不允许改变。址空间不允许改变。优点:软件实现,无需硬件支持。优点:软件实现,无需硬件支持。缺点:分配连续空间,程序不能移动。缺点:分配连续空间,程序不能移动。许家珆4.1 存储管理的基本概念存储管理的基本概念 动态动态重定位重定位 重定位发生在程序执行过程中,在访问指令
6、或数据重定位发生在程序执行过程中,在访问指令或数据时,才进行地址变换。需要硬件地址变换机制实现。时,才进行地址变换。需要硬件地址变换机制实现。5001000VRBR+100011001500LOAD 1,5001 2 3 4 5内存空间内存空间LOAD 1,50001005001 2 3 4 5地址空间地址空间LOAD 1,500许家珆4.1 存储管理的基本概念存储管理的基本概念一。程序的装入和链接一。程序的装入和链接 绝对装入方式绝对装入方式 装入程序按照装入模块中的绝对地址将装入程序按照装入模块中的绝对地址将程序和数据装入内存。程序和数据装入内存。可重定位装入方式可重定位装入方式 装入模块
7、装入模块为相对地址(逻辑地址),为相对地址(逻辑地址),装入程序按照装入程序按照当前内存使用的情况,将当前内存使用的情况,将装入模块装入内存装入模块装入内存的某个物理地址。但是装入后不允许移动。的某个物理地址。但是装入后不允许移动。重定位重定位将逻辑地址转换为物理地址的过程将逻辑地址转换为物理地址的过程,也称为地,也称为地址变换或地址映射。址变换或地址映射。由于地址变换是在装入时一次完成的,又称为由于地址变换是在装入时一次完成的,又称为静态重定位静态重定位。1 1。程序的装入方式。程序的装入方式 动态运行时装入方式动态运行时装入方式 将装入模块装入内存后,运行时才进行地址变换,又将装入模块装入
8、内存后,运行时才进行地址变换,又称为动态重定位。称为动态重定位。许家珆4.1 存储管理的基本概念存储管理的基本概念 静态静态链接链接 事先将所需目标模块链接生成一个完整的事先将所需目标模块链接生成一个完整的装入模块(装入模块(.exe)运行时直接装入内存。运行时直接装入内存。动态动态链接链接 装入时装入时链接链接 边装入时边链接。即装入一个目标模块后,再将它所调用边装入时边链接。即装入一个目标模块后,再将它所调用的外部模块装入,可存放在内存的任何地方,并修改目标模的外部模块装入,可存放在内存的任何地方,并修改目标模块中的相对地址。块中的相对地址。运行时运行时链接链接 延迟到运行时,才将当前被调
9、用的目标模块装入延迟到运行时,才将当前被调用的目标模块装入,并链接。并链接。链接链接由由链接程序将目标模块及其所需的库函数,装配链接程序将目标模块及其所需的库函数,装配 链接生成链接生成装入模块的过程装入模块的过程。2.2.程序的程序的链接链接许家珆4.1 存储管理的基本概念存储管理的基本概念 实存方案实存方案 分区分配管理分区分配管理 分页管理分页管理 分段管理分段管理 虚存虚存方案方案 请求式分页管理请求式分页管理 请求式分段管理请求式分段管理 段页式管理段页式管理二。存储管理的机制二。存储管理的机制内存分配策略内存分配策略地址映射机制地址映射机制内存保护机制内存保护机制虚拟存储机制虚拟存
10、储机制许家珆4.2 4.2 分区存储管理分区存储管理一。固定一。固定分区(分区(Fixed PartitionsFixed Partitions)将内存固定划分为相等或不等的区域,称为分区,分区将内存固定划分为相等或不等的区域,称为分区,分区一旦划定,在执行过程中分区长度和个数将不再变化。建立一旦划定,在执行过程中分区长度和个数将不再变化。建立内存分配表内存分配表记录分区分配的情况。记录分区分配的情况。简单、可靠,但产生简单、可靠,但产生分区分区“内零头内零头”。内存利用效低。内存利用效低。分区存储管理的基本思想:分区存储管理的基本思想:将内存划分为若干分区,对用户作业进行连续分配。将内存划分
11、为若干分区,对用户作业进行连续分配。分区号分区号大小大小(K)始址始址(K)状态状态1234153050100304575125已分配已分配已分配已分配已分配已分配未分配未分配操作系统操作系统进程进程A(6K)进程进程B(25K)进程进程C(36K)0304575125内零头内零头1234许家珆4.2 4.2 分区存储管理分区存储管理二、可变二、可变分区分区(Variable PartitionsVariable Partitions)1.1.数据结构数据结构 。已分配分区表。已分配分区表 。未分配分区表。未分配分区表 通常表项由存储控制块通常表项由存储控制块MCB(区号、长度、始址(区号、长
12、度、始址等)描述。等)描述。并按照某种次序构成并按照某种次序构成链结构链结构。许家珆2.2.分区分区分配算法分配算法 首次适应算法首次适应算法FFFF(First FitFirst Fit)未分配分区按照地址从小到大排列。分配时顺序查找,未分配分区按照地址从小到大排列。分配时顺序查找,选择第一个满足要求的分区进行分配。选择第一个满足要求的分区进行分配。循环循环首次适应算法首次适应算法RFFRFF 分配时从上次已分配分配时从上次已分配分区分区的下一空闲的下一空闲分区开始查找。分区开始查找。查找到查找到链尾后,又从链首开始链尾后,又从链首开始查找。查找。最佳最佳适应算法适应算法BFBF(Best
13、FitBest Fit)按照空闲区大小升序排列,按照空闲区大小升序排列,分配时顺序查找,选择第分配时顺序查找,选择第一个满足要求的最小分区进行分配。一个满足要求的最小分区进行分配。最坏最坏适应算法适应算法WFWF(Worst FitWorst Fit)未分配分区按照大小从大到小排列。分配时顺序选择未分配分区按照大小从大到小排列。分配时顺序选择当前最大区。当前最大区。许家珆分配算法分配算法小结 名名 称称 未分配区组织未分配区组织 策策 略略 优优 点点 缺缺 点点首次适应算法首次适应算法循环循环首次适应算法首次适应算法最佳最佳适应算法适应算法最坏最坏适应算法适应算法 名名 称称 未分配区组织未
14、分配区组织 策策 略略 优优 点点 缺缺 点点首次适应算法首次适应算法循环循环首次适应算法首次适应算法最佳最佳适应算法适应算法最坏最坏适应算法适应算法许家珆 4.2 4.2 分区存储管理分区存储管理(三)(三)3 3。分区的分配与回收操作。分区的分配与回收操作将分区分配给请求者将分区分配给请求者修改数据结构修改数据结构p110许家珆4.2 4.2 分区存储管理分区存储管理(四)(四)3 3。分区的分配与回收操作。分区的分配与回收操作(P143 P143 图图5-105-10)回收回收F1回收区回收区F1回收区回收区F2回收区回收区F1内存内存回收的三种情况回收的三种情况许家珆4.2 4.2 分
15、区存储管理分区存储管理(四)(四)3 3。分区的分配与回收操作。分区的分配与回收操作顺序检索可用资源表直到找到表目:顺序检索可用资源表直到找到表目:m.addrsaa 或 m.size=0P143许家珆4.2 4.2 分区存储管理分区存储管理(五)(五)三。动态三。动态重定位重定位分区分配分区分配 1.1.紧凑技术紧凑技术 也称为也称为“拼凑拼凑”技术,用于解决可变分区中产生的技术,用于解决可变分区中产生的“外零外零头头”,即移动某些已分配分区,使,即移动某些已分配分区,使“外零头外零头”合并为一个大的合并为一个大的连续空闲区。连续空闲区。(P111 P111 图图4-8)4-8)2 2。分配
16、算法。分配算法请求分配请求分配顺序查找顺序查找空闲空闲分区表分区表有可用有可用分区分区动态分配动态分配修改数据结构修改数据结构Y空闲区总空闲区总和和 需求需求 N紧凑紧凑修改数据结构修改数据结构Y返返回回N 显然,可变显然,可变分区分配克服了内零头,提高了内存的利率,但分区分配克服了内零头,提高了内存的利率,但产生了外零头。使小碎片得不到利用。产生了外零头。使小碎片得不到利用。返回返回分区号分区号及首地址及首地址许家珆思 考 题 1 1、说明重定位分区分配方式的地址转换机制?如何实现分区存储保护?2、为什么要引入对换技术?如何实现进程的对换?许家珆4.3 4.3 分页存储管理分页存储管理(一)
17、(一)离散式内存分配离散式内存分配 允许一个进程分配在不相连接的内存允许一个进程分配在不相连接的内存 区域中,以利于提高存储效率。区域中,以利于提高存储效率。一。一。分页存储管理的基本思想分页存储管理的基本思想 将地址空间划分为大小相等的将地址空间划分为大小相等的页面页面,将内存空间也划分,将内存空间也划分为大小相等的为大小相等的物理块物理块,一个作业的所有页面,一个作业的所有页面一次装入一次装入,但,但可不连续存放可不连续存放。1 1、分页地址结构分页地址结构 页号页号 P P 位移量位移量 W3112 110内存连续分配的问题内存连续分配的问题 :产生内零头或者外零头。产生内零头或者外零头
18、。采用紧凑技术增加额外开销。采用紧凑技术增加额外开销。页面大小通常为页面大小通常为2的整数次幂(的整数次幂(512字节字节4K)。)。许家珆 4.3 4.3 分页存储管理分页存储管理(二)(二)页表页表PTPT(Page TablePage Table)页号页号 P P 位移量位移量 W逻辑地址逻辑地址LA 页框号页框号 位移量位移量 物理地址物理地址2 2、内存分配、内存分配 将地址空间连续划分为大小相等的将地址空间连续划分为大小相等的页面页面,将内存空间,将内存空间也划分为大小相等的也划分为大小相等的物理块物理块(页框),一个作业的所有页(页框),一个作业的所有页面一次装入,但可不连续存放
19、面一次装入,但可不连续存放。仅存在很少的页内零头。仅存在很少的页内零头。为每个进程建立一张页表,每页占据一个表项,页表通常为每个进程建立一张页表,每页占据一个表项,页表通常放在内存中。放在内存中。页号页号页框号(页框号(块号)块号)存取控制存取控制01.m:35.许家珆 4.3 4.3 分页存储管理分页存储管理(三)(三)二。二。地址地址映射机制映射机制是通过是通过“页表页表”来实现来实现地址地址映射的。映射的。页页 号号 块块 号号 存取控制存取控制页描述子+如果页号如果页号页表页表长度,则中断,长度,则中断,否则继续否则继续.如果访问非法,如果访问非法,则中断,否则则中断,否则继续。继续。
20、页页 号号 位移量位移量虚拟地址虚拟地址 LA 块块 号号 位移量位移量物理地址物理地址页表始址页表始址 长度长度页表寄存器页表寄存器PTR页页 表表 块号块号 存取控制存取控制页描述子页描述子页页 号号 0 1 .块块 号号位移量位移量许家珆 4.3 4.3 分页存储管理分页存储管理(四)(四)由于页表存放在内存,每存取一个数据,由于页表存放在内存,每存取一个数据,CPU 要访要访两次内存,几乎降低了一半的计算速度,为了加快地址两次内存,几乎降低了一半的计算速度,为了加快地址变换的速度,在地址变换机构中建立一个变换的速度,在地址变换机构中建立一个高速缓冲存储高速缓冲存储器器,也称为,也称为联
21、想存储器联想存储器(Associative MemoryAssociative Memory)或或快表快表。2 2。具有快表的。具有快表的地址变换机构地址变换机构三。分页系统中的超高速缓存(三。分页系统中的超高速缓存(Cache MemoryCache Memory)在在CacheCache中,存放现行进程的页表副本,即记录现行进程中,存放现行进程的页表副本,即记录现行进程中最常用的页描述子。中最常用的页描述子。页表表目是在访问内存的过程中按需要动态装入快表的,页表表目是在访问内存的过程中按需要动态装入快表的,当进程切换时,快表被清零。当进程切换时,快表被清零。P153 P153 图图5-18
22、 5-18 描述了具有快表的描述了具有快表的地址变换过程。地址变换过程。1 1。为什么要设置快表为什么要设置快表许家珆 4.3 4.3 分页存储管理分页存储管理(五)(五)在缓存中查找页在缓存中查找页 描述子,找到了描述子,找到了 则提取。则提取。快表的命中率可高达快表的命中率可高达80%90%80%90%。利用页描述子和位利用页描述子和位移量计算物理地址移量计算物理地址2在缓存中未找到,在缓存中未找到,从页表中读取,并从页表中读取,并存入缓存。存入缓存。利用页描述子和位利用页描述子和位移量计算物理地址移量计算物理地址页号页号 位移量位移量虚拟地址虚拟地址具有超高速缓冲存储器的地址变换过程具有
23、超高速缓冲存储器的地址变换过程275382。超高速缓存超高速缓存页表页表01234.首先访问高速缓首先访问高速缓存,确定需要的页描存,确定需要的页描述子是否在其中,如述子是否在其中,如果没有发现,再访问果没有发现,再访问存储器中的页表。同存储器中的页表。同时将从页表中读出的时将从页表中读出的页描述子更新高速缓页描述子更新高速缓存中旧的页描述子。存中旧的页描述子。许家珆 4.3 4.3 分页存储管理分页存储管理(六)(六)1 1、什么是什么是“页表页表”?它具有什么样的结构?其表?它具有什么样的结构?其表 项项 一般包括哪些字段?一般包括哪些字段?2 2、如何通过如何通过页表实现逻辑地址到物理地
24、址的转换?页表实现逻辑地址到物理地址的转换?画出地址转换的流程图。画出地址转换的流程图。3 3、分页存储管理采用什么存储保护措施?分页存储管理采用什么存储保护措施?4 4、画出具有快表的地址转换过程的流程图。画出具有快表的地址转换过程的流程图。问问 题题 许家珆 4.3 4.3 分页存储管理分页存储管理(七)(七)四。多级页表四。多级页表 设置多级页表是为了解决逻辑空间过大,所造成的页表设置多级页表是为了解决逻辑空间过大,所造成的页表过大,占有太大的连续内存空间的过大,占有太大的连续内存空间的 问题。问题。1 1。二级页表。二级页表 页表内再分页,分为外层页表和内层页表。页表内再分页,分为外层
25、页表和内层页表。逻辑地址结构:逻辑地址结构:外层页号外层页号 P1 P1内层页号内层页号 P2 P2页内地址页内地址 d d 31 22 21 12 11 0具有具有二级页表的地址变换机构:二级页表的地址变换机构:问题:问题:1.分别画出二级页表的页描述子的结构,你认为它们分别画出二级页表的页描述子的结构,你认为它们 应该存放在哪里?如何存放?应该存放在哪里?如何存放?2.画出二级页表地址转换机制的流程图。画出二级页表地址转换机制的流程图。许家珆 4.4 4.4 分段存储管理分段存储管理(一)(一)一、一、分段存储管理的基本思想分段存储管理的基本思想1 1、什么是分段、什么是分段 页是信息的物
展开阅读全文