收藏 分享(赏)

Chapter5(3)-存储管理.ppt

上传人:hwpkd79526 文档编号:10135517 上传时间:2019-10-13 格式:PPT 页数:77 大小:1.55MB
下载 相关 举报
Chapter5(3)-存储管理.ppt_第1页
第1页 / 共77页
Chapter5(3)-存储管理.ppt_第2页
第2页 / 共77页
Chapter5(3)-存储管理.ppt_第3页
第3页 / 共77页
Chapter5(3)-存储管理.ppt_第4页
第4页 / 共77页
Chapter5(3)-存储管理.ppt_第5页
第5页 / 共77页
点击查看更多>>
资源描述

1、操作系统的资源管理,操作系统的资源管理,(1) 资源管理的机制与策略死锁及其解决方法 (2) 处理机管理 (3) 主存管理 (4) 设备管理 (5) 文件系统,操作系统的资源管理 主要内容,主存管理,操作系统的资源管理 (3) 主存管理,主存管理的功能 分区存储管理 页式地址变换 请求页面的机制 淘汰机制与策略 段式及段页式存储管理,操作系统的资源管理 (3) 主要内容,1. 主存共享方式 大小不等的区域 分区存储管理 段式存储管理,操作系统的资源管理 (3) 主存管理的功能,大小相等的区域 页式存储管理 二者结合 段页式存储管理,2. 程序的逻辑组织 一维地址结构 一个程序是一个连续、线性的

2、地址结构; 确定线性地址空间中的指令地址或操作数地址只需要一个信息。,二维地址结构 一个程序由若干个分段组成,每个分段是一个连续的地址区; 确定任一线性地址空间中的指令地址或操作数地址需要两个信息,一是该信息所在的分段,另一个是该信息在段内的偏移量。,操作系统的资源管理 (3) 主存管理的功能,3. 几个概念 物理地址 (绝对地址、实地址) 物理地址是计算机主存单元的真实地址,又称为绝对地址或实地址。 主存空间 物理地址的集合所对应的空间组成了主存空间。 逻辑地址 (相对地址、虚地址) 用户的程序地址(指令地址或操作数地址)均为逻辑地址。 作业地址空间 用户程序所有的逻辑地址集合对应的空间。,

3、操作系统的资源管理 (3) 主存管理的功能,作业地址空间与主存空间,操作系统的资源管理 (3) 主存管理的功能,4. 主存管理功能 实现逻辑地址到物理主存地址的映射 主存分配 存储保护 主存扩充,操作系统的资源管理 (3) 主存管理的功能,地址映射(重定位) 什么是地址映射(重定位)将程序地址空间中使用的逻辑地址变换成主存中的物 理地址的过程,称为地址映射(重定位)。,操作系统的资源管理 (3) 主存管理的功能,静态地址映射(静态重定位) 在作业装入过程中随即进行的地址变换方式称为静态地址映射。,操作系统的资源管理 (3) 主存管理的功能,动态地址映射(动态重定位) 在程序执行期间,随着每条指

4、令和数据的访问自动地连续地进行地址映射,这种地址变换方式称为动态地址映射。,操作系统的资源管理 (3) 主存管理的功能,静态地址映射与动态地址映射的区别静态地址映射 动态地址映射 在程序装入过程中 在程序执行期间进行地址映射 进行地址映射 需软件 需硬件地址变换机构重定位装入程序 重定位寄存器 需花费较多CPU时间 地址变换快 不灵活 灵活,操作系统的资源管理 (3) 主存管理的功能,主存分配 构造分配用的数据结构 制定策略 分配策略 在众多个请求者中选择一个请求者的原则 放置策略 在可用资源中,选择一个空闲区的原则 调入策略 决定信息装入主存的时机预调策略:预先将信息调入主存请调策略:当需要

5、信息时,将信息调入主存 淘汰策略 在主存中没有可用的空闲区(对某一作业而言)时,决定哪些信息从主存中移走,即确定淘汰已占用的内存区的原则。 实施主存分配与回收,操作系统的资源管理 (3) 主存管理的功能,主存扩充 可行性 实现方法 程序的全部代码和数据存放在辅存中; 将程序当前执行所涉及的那部分程序代码放入主存中; 程序执行时,当所需信息不在主存,由操作系统和硬件相配合来完成主存从辅存中调入信息,程序继续执行。 什么是虚拟存储器由操作系统和硬件配合完成主存和辅存之间信息的动态 调度。计算机系统为用户提供一个其存储容量比实际主 存大得多的存储器,这个存储器称为虚拟存储器。,局部性特征,操作系统的

6、资源管理 (3) 主存管理的功能,虚拟存储器的核心 逻辑地址与物理地址分开 存储空间与虚地址空间分开 提供地址变换机构 实现虚拟存储器的物质基础 有相当容量的辅存足以存放应用程序的虚地址空间 有一定容量的主存存放进入主存的多进程的信息 地址变换机构,操作系统的资源管理 (3) 主存管理的功能,存储保护 什么是存储保护在多用户环境中,主存储器按区分配给各用户程序使 用。为了互不影响,必须由硬件(软件配合)保证各用户 程序只能在给定的存储区域内活动,这种措施叫做存 储保护。,操作系统的资源管理 (3) 主存管理的功能,界地址保护 上下界防护例:作业大小为4KB,主存首址为20KB。,20KB,24

7、KB,设置上下界寄存器内容 ? 判断是否越界 ?若 20KBD24KB 允许访问;否则发生越界中断,操作系统的资源管理 (3) 主存管理的功能,基地址、限长防护例:作业大小为4KB,主存首址为20KB。,设置基址、限长寄存器内容 ? 判断是否越界 ?若 逻辑地址 4KB 允许访问;否则发生越界中断,20KB,4KB,操作系统的资源管理 (3) 主存管理的功能,1. 动态分区的分配与回收 什么是动态分区分配 在处理作业的过程中,建立分区,依请求的大小分配分区。 动态分区的分配过程,操作系统的资源管理 (3) 分区存储管理,作业1申请32KB,作业2申请14KB,作业3申请64KB,作业4申请10

8、0KB,作业5申请50KB,操作系统的资源管理 (3) 分区存储管理,动态分区的分配过程,操作系统的资源管理 (3) 分区存储管理,动态分区的回收过程,2. 动态分区分配的数据结构 主存资源信息块 (M_RIB) 分区分配结构分区描述器 (PD),flag: 为 0 空闲区为 1 已分配区 size: 分区大小 next:空闲区自由主存队列中的勾链字已分配区此项为零,操作系统的资源管理 (3) 分区存储管理,空闲区队列结构,操作系统的资源管理 (3) 分区存储管理,3. 放置策略 什么是放置策略选择空闲区的策略,称为放置策略。常用的放置策略首次匹配(首次适应算法)最佳匹配(最佳适应算法),操作

9、系统的资源管理 (3) 分区存储管理,首次适应算法 首次适应算法是将输入的作业放置到主存里第一个足够装入它的地址最低的空闲区中。,作业A18KB,首次适应算法的例 空闲区队列结构 空闲区地址由低到高排序 首次适应算法的特点尽可能地利用存储器中低地址的空闲区,而尽量保存高地址的空闲区。,操作系统的资源管理 (3) 分区存储管理,最佳适应算法 最佳适应算法是将输入的作业放置到主存中与它所需大小最接近的空闲区中。,作业A18KB,最佳适应算法的例 空闲区队列结构 空闲区大小由小到大排序 最佳适应算法的特点尽可能地利用存储器中小的空闲区,而尽量保存大的空闲区。,操作系统的资源管理 (3) 分区存储管理

10、,两种放置策略的讨论 作业A要求18KB;作业B要求25KB;作业C要求30KB。用首次适应算法、最佳适应算法、最坏适应算法来处理该作业序列,看哪种算法合适。,操作系统的资源管理 (3) 分区存储管理,首次适应算法、最佳适应算法队列结构,操作系统的资源管理 (3) 分区存储管理,首次适应算法,作业A要求18KB,作业B要求25KB,作业C要求30KB 首次适应算法对该作业序列是不合适的,操作系统的资源管理 (3) 分区存储管理,最佳适应算法,操作系统的资源管理 (3) 分区存储管理,作业A要求18KB,作业B要求25KB,作业C要求30KB 最佳适应算法对该作业序列是合适的,4. 碎片问题及拼

11、接技术 什么是碎片问题 在已分配区之间存在着的一些没有被充分利用的空闲区,如何解决碎片问题?,什么是拼接技术所谓拼接技术是指移动存储器中某些已分配区中的信息,使本来分散的空闲区连成一个大的空闲区。,操作系统的资源管理 (3) 分区存储管理,1. 页式系统的基本概念 页面程序的地址空间被等分成大小相等的片,称为页面,又称为虚页。 主存块 主存被等分成大小相等的 片,称为主存块,又称为 实页。 页面与主存块的关系,操作系统的资源管理 (3) 页式存储管理,页表 什么是页表为了实现从地址空间到物理主存的映象,系统建立的记录页与内存块之间对应关系的地址变换的机构称为页面映像表,简称页表。 页表的组成

12、高速缓冲存储器 地址变换速度快,但成本较高 主存区域 地址变换速度比硬件慢,成本较低,操作系统的资源管理 (3) 页式存储管理,分页映像存储的例,操作系统的资源管理 (3) 页式存储管理,2. 页式地址变换 页表记录页与块之间对应关系的地址变换的机构。 虚地址结构当CPU给出的虚地址长度为16位,页面大小为1KB时,在分页系统中地址结构的格式如下:,操作系统的资源管理 (3) 页式存储管理,页式地址变换 页式地址变换的例作业2地址空间中,设100号单元处有如下指令: mov r1,2500。当这条指令执行时,如何进行正确的地址变换。,2500 21024 + 452 p=2 w=452 000

13、0100111000100 000010 0111000100,操作系统的资源管理 (3) 页式存储管理,页式地址变换过程,0 0 0 1 1 1,0 1 1 1 0 0 0 1 0 0,操作系统的资源管理 (3) 页式存储管理,页式地址变换步骤 CPU给出操作数地址(为2500) ; 由分页机构自动地把逻辑地址分为两部分,得到页号p和页内相对位移w (p =2, w =452); 根据页表始址寄存器指示的页表始地址,以页号为索引,找到第2页所对应的块号(为7) ; 将块号b和页内位移量w拼接在一起,就形成了访问主存的物理地址(71024+452=7620),操作系统的资源管理 (3) 页式存

14、储管理,采用联想存储器加快查表速度 什么是联想存储器高速、小容量半导体存储部件,又称缓冲存储器。 快表在缓冲存储器中存放正在运行的进程当前用到的页号和对应的块号,又称为快表。,操作系统的资源管理 (3) 页式存储管理,利用快表进行地址映射,操作系统的资源管理 (3) 页式存储管理,例1:设有一页式存储管理系统,向用户提供的逻辑地址空间最大为16页,每页2048B,内存总共有8个存储块,试问逻辑地址至少应为多少位?内存空间有多大? 解:(1)页式存储管理系统的逻辑地址为:其中页内地址表每页的大小即 2048B=2*1024B=211B,所以页内地址为11位。其中页号表最多允许的页数即 16页=2

15、4页,所以页号为4位。故逻辑地址至少应为15位。 (2)物理地址为: 其中块内地址表每块的大小与页大小相等,所以块内地址也为11位。其中块号表内存空间最多允许的块数即 8块=23块,所以块号为3位。故内存空间至少应为14位,即214 =16KB,操作系统的资源管理 (3) 页式存储管理,例2:若在一分页存储管理系统中,某作业的页表如表所示,已知页面大小为1024B,试将逻辑地址(十进制)1011,2148,5012转化为相应的物理地址,画出其地址转换图。 解:由题知逻辑地址为:物理地址为: (1)逻辑地址1011的二进制表示为 00 1111110011由此可知逻辑地址1011的页号0,查页表

16、知该页放在第2物理块中,其物理地址的二进制表示为 010 1111110011所以逻辑地址1011对应的物理地址为0BF3H.其地址转换图如下页所示。(2)略(3)逻辑地址5012的二进制表示为:100 1110010100可知该逻辑地址的页号为4,查页表知该页为不合法页,则产生越界中断。,操作系统的资源管理 (3) 页式存储管理,地址变换过程,+,页表长度,页表始址,3F3,0,页表寄存器,逻辑地址1011(03F3H),物理地址0BF3H,越界中断,页合法,00 1111110011,010 1111110011,操作系统的资源管理 (3) 页式存储管理,例3 在一个页式存储管理系统中,页

17、表内容如下所示,若页的大小为4K,则地址转换机构将逻辑地址0转换成的物理地址为多少? 页号 块号 0 2 1 1 2 63 34 7,操作系统的资源管理 (3) 页式存储管理,例4 某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户程序中已调入内存的页面对应的物理块号如下表: 则逻辑地址0A5C(H)所对应的物理地址为 :,操作系统的资源管理 (3) 页式存储管理,例5 在一分页存储管理系统中,逻辑地址长度为16位,页面大小为4096字节,现有一逻辑地址为2F6AH,且第0、1、2页依次放在物理块10、12、14号中,问相应的物理地址为多少? 解答:因逻辑地

18、址长度为16位,页面大小4096字节,所以,前面的4位表示页号。2F6AH的二进制表示:0010 1111 0110 1010可知页号为2,根据已知条件:该页放在14号物理块中。物理地址的十六进制表示为:EF6AH,操作系统的资源管理 (3) 页式存储管理,扩充页表功能,中断位I 标识该页是否在主存若i=1,表示此页不在主存;若i=0,表示该页在主存 辅存地址 该页面在辅存的位置,操作系统的资源管理 (3) 请求页面的机制,1. 两种页式系统 简单页式系统 装入一个作业的全部页面才能投入运行 请求页式系统 装入一个作业的部分页面即可投入运行(1) 简单页式系统需要解决什么问题?(2) 请求分页

19、系统需要解决什么问题?,2. 请求页式系统需解决的问题,缺页处理,作业2在请求分页系统中的存储映像,操作系统的资源管理 (3) 请求页面的机制,缺页处理的例作业2的主存块数为 m2=3,讨论程序执行“mov r1,2120”指令时的情况。,CPU产生的虚地址为2120 分页机构得 p=2,w=72 查页表。该页中断位i=1 发生缺页中断 !,如主存中有空白块,且nm 则直接调入 如主存中无空白块,或n m ,则需淘汰该作业在主存中的一页,操作系统的资源管理 (3) 请求页面的机制,缺页处理,操作系统的资源管理 (3) 请求页面的机制,1. 什么是淘汰策略用来选择淘汰哪一页的规则叫做置换策略,或

20、称淘汰算法。,2. 扩充页表功能,引用位 标识该页最近是否被访问为“0” 该页没有被访问;为“1” 该页已被访问 改变位 表示该页是否被修改为“0” 该页未被修改;为“1” 该页已被修改,操作系统的资源管理 (3) 淘汰机制与策略,3. 颠簸和缺页中断率,颠簸颠簸(thrashing),又称为“抖动”。简单地说,导致系统效率急剧下降的主存和辅存之间的频繁页面置换现像称为“抖动”。,缺页中断率 假定程序p共有n页,系统分配m块,有 1mn; 若程序p在运行中:成功的访问次数为s,不成功的访问次数为f; 缺页中断率: f=f/ (s+ f)f= f (r,m,p); r:置换算法;p:程序特征;

21、m:系统分配的块数,操作系统的资源管理 (3) 淘汰机制与策略,最佳算法(OPT算法) 当要调入一新页而必须先淘汰一旧页时,所淘汰的那一页应是以后不再要用的,或者是在最长的时间以后才会用到的那页。,先进先出淘汰算法(FIFO算法),什么是先进先出淘汰算法总是选择在主存中居留时间最长(即最早进入主存)的一页淘汰。 先进先出淘汰算法的实现 建立一个页面进入主存的先后次序表; 建立一个替换指针,指向最早进入主存的页面; 当需要置换一页时,选择替换指向的那一页,然后调整替换指针的内容。,4. 置换算法,操作系统的资源管理 (3) 淘汰机制与策略,页号表页面进入主存的先后次序: 2451,当要调入第6页

22、时: 置换第2页 将第2页改为6 替换指针指向第4页,操作系统的资源管理 (3) 淘汰机制与策略,在存储分块表中建立次序表页面进入主存的先后次序:4512,当要调入第6页时:如何处理 ? 512 6,操作系统的资源管理 (3) 淘汰机制与策略,最久未使用淘汰算法(LRU算法),什么是最久未使用淘汰算法总是选择最长时间未被使用的那一页淘汰。 最久未使用淘汰算法的实现 用引用位考察页面的使用情况; 当访问页面时,将引用位置1,并记时; 当要淘汰一页时,选择时间最长的一页淘汰。 要精确实现很困难 硬件方法:采用计数器 软件方法:采用页号栈,操作系统的资源管理 (3) 淘汰机制与策略,用页号栈实现LR

23、U算法页面访问轨迹:451 2 5 6,访问4、5、1、2页后栈的内容,访问第5页后,调整栈的内容,访问第6页后,栈的内容,操作系统的资源管理 (3) 淘汰机制与策略,LRU近似算法 (使用引用位) 框图,操作系统的资源管理 (3) 淘汰机制与策略,LRU近似算法举例,当要调入第6页时,如何处理 ?,操作系统的资源管理 (3) 淘汰机制与策略,最佳置换算法例,假定系统为某进程分配了3个物理块,进程运行时的页面走向为 1,2,3,4,1,2,5,1,2,3,4,5,开始时3个物理块均为空,计算采用最佳置换页面淘汰算法时的缺页率?,注:实际上这种算法无法实现,因页面访问的未来顺序很难精确预测,但可

24、用该算法评价其它算法的优劣。,1,1,2,1,2,3,1,2,4,1,2,5,3,2,5,3,4,5,缺,缺,缺,缺,缺,缺,缺,缺页中断次数=7,页面置换次数=4,缺页率=7/12,先进先出置换算法例题,1、假定系统为某进程分配了3个物理块,进程运行时的页面走向为 1,2,3,4,1,2,5,1,2,3,4,5,开始时3个物理块均为空,计算采用先进先出页面淘汰算法时的缺页率?,缺页中断次数=9,页面置换次数=6,缺页率=9/12,缺,1,缺,1,2,1,2,缺,3,缺,2,3,4,缺,4,3,1,缺,4,1,2,缺,1,2,5,缺,2,5,3,缺,5,3,4,先进先出置换算法例题,2、假定系

25、统为某进程分配了4个物理块,进程运行时的页面走向为 1,2,3,4,1,2,5,1,2,3,4,5,开始时4个物理块均为空,计算采用先进先出页面淘汰算法时的缺页率?,缺页中断次数=10,页面置换次数=6,缺页率=10/12,先进先出置换算法例题,3、假定系统为某进程分配了5个物理块,进程运行时的页面走向为 1,2,3,4,1,2,5,1,2,3,4,5,开始时5个物理块均为空,计算采用先进先出页面淘汰算法时的缺页率?,缺页中断次数=5,页面置换次数=0,缺页率=5/12,最近最久未使用算法例,假定系统为某进程分配了3个物理块,进程运行时的页面走向为 1,2,3,4,1,2,5,1,2,3,4,

26、5,开始时3个物理块均为空,计算采用最近最久未使用页面淘汰算法时的缺页率?,缺页中断次数=10,页面置换次数=7,缺页率=10/12,缺,1,1,缺,2,1,2,3,缺,缺,2,3,4,缺,4,3,1,缺,4,1,2,缺,1,2,5,缺,1,2,3,缺,3,2,4,缺,3,4,5,1. 段式地址空间 什么是段分段是程序中自然划分的一组逻辑意义完整的信息集合。分段的例:代码分段、数据分段、栈段页。 作业地址空间由若干个逻辑分段组成,每个分段有自己的名字,对于一个分段而 言,它是一个连续的地址区。,操作系统的资源管理 (3) 段式及段页式存储管理,段式地址结构,2. 段式地址变换,段式地址步骤 取

27、出程序地址(s,w); 用s检索段表; 如w0或wL则主存越界; (Bw)即为所需主存地址,操作系统的资源管理 (3) 段式及段页式存储管理,例:采用段式存储管理的系统中,若地址用24位表示,其中8位表示段号,则允许段的最大长度是( ),一个作业最多可有( )个段。A.224 B. 216 C. 28 D. 232,操作系统的资源管理 (3) 段式及段页式存储管理,段表寄存器,逻辑地址(2,3000),+,+,越界中断,内存,操作系统的资源管理 (3) 段式及段页式存储管理,例:,1、某段表的内容如下: 段号 段首址 段长度 0 120K 40K 1 760K 30K 2 480K 20K 3

28、 370K 20K 一逻辑地址为(2,154),它对应的物理地址为多少? 解:逻辑地址为:逻辑地址(2,154)的段号为2,查段表知其对应的物理地址为: 480K+154,操作系统的资源管理 (3) 段式及段页式存储管理,2、在一个段式存储管理系统中,其段表为:段号 内存起始地址 段长0 210 5001 2350 202 100 903 1350 5904 1938 95 试求表中逻辑地址对应的物理地址是什么? 解:逻辑地址为:逻辑地址 对应的物理地址为:210+430=640逻辑地址 因为段内地址120段长90,所以该段为非法段。,操作系统的资源管理 (3) 段式及段页式存储管理,3. 页

29、式系统与段式系统的区别 用户地址空间的区别 页式系统中用户地址空间一维地址空间 段式系统中用户地址空间二维地址空间 分段和页面的区别 分段 页面 信息的逻辑划分 信息的物理划分 段长是可变的 页的大小是固定的 用户可见 用户不可见 w字段的溢出 w字段的溢出自动 将产生越界中断 加入到页号中,操作系统的资源管理 (3) 段式及段页式存储管理,4. 段页式系统在段式存储管理中结合分页存储管理技术,在一个分段内划分页面,就形成了段页式存储管理。 段页式地址结构的用户地址空间,操作系统的资源管理 (3) 段式及段页式存储管理,段页式系统中段表、页表与主存的关系,操作系统的资源管理 (3) 段式及段页

30、式存储管理,基本概念 虚、实分离 逻辑地址 作业地址空间 物理地址 存储空间 地址映射 定义 类型静态地址重定位 定义 实现动态地址重定位 定义 实现 虚存 存储保护 定义 界地址保护的实现方法,操作系统的资源管理 (3) 小结,分区存储管理 分区分配中的数据结构 空闲区队列结构 放置策略 首次适应算法、最佳适应算法的定义、特点 两种放置策略的讨论 分区的缺点及解决 碎片与拼接,操作系统的资源管理 (3) 小结,页式存储管理 页式地址变换 页表 虚地址结构 页式地址变换过程,请调策略 扩充页表功能 中断位 辅存地址 缺页处理 淘汰策略 扩充页表功能 引用位、改变位 抖动 置换算法 定义 先进先出淘汰算法、最久未使用淘汰算法,段页式存储管理 段式系统的二维地址结构 段页式系统中段表、页表与主存的关系,操作系统的资源管理 (3) 小结,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报