操作系统原理 第四章 存储器管理PPT课件
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
➢ 记住内存每个位置的状态。
最
➢ 在系统程序或用户作业提出申请
新
时,实施分配,并修改分配记录。
课 件
➢ 接受系统或用户释放的存储区,
或主动收回不再用的存储区,并
2
CUIT
相应地修改分配记录表。
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.1 存储管理概述
➢ 静态地址重定位:是指作业在装入时随即 进行的地址变换方式,这一工作由装配程 序完成。
➢ 优点:无需增加硬件地址变换机构;实现 简单。
➢ 缺点:程序经地址定位后就不能再移动了;
最
程序在存储空间中只能连续分配;多个用
新 课
户难以共享存于内存中的同一程序。
件
10
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
➢ 动态分区
➢ 工作原理
存储空间的划分是在装入作业时进行 的,且使分区大小正好适应作业的需要。
➢ 数据结构
最
➢ 空闲分区表:序号,大小,起址,状态
新
➢ 空闲分区链:在每个分区中附上一个表
课 件
格信息,状态(0,1),大小,指针 (空白分区才有)
19
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
X 进程终止前
X 进程终止后
AXB
A
B
最 新 课 件
26
CUIT
AX XB X
A B
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
➢ 伙伴系统
最 新 课 件
27
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
➢ 对换技术
➢ 对换(Swapping)
➢ 把内存中的暂不运行的进程或暂不使用的数 据,换出到外存,把已具备运行条件的进程、 或进程所需要的数据和程序,换入内存,并 将控制转给它。
➢ 整体对换(进程对换):用于分时系统,
最 解决内存紧张问题。
新
课 ➢ 部份对换(页面对换、分段对换):以请 件 求分页和请求分段存储管理为基础,用于
4.3 连续分配存储管理方式
➢ 单一连续分配
➢ 存储区的分配
➢ 内存分配和回收策略
➢ 优点
最 新 课
➢ 管理简单,不要求专用的硬件支 持;为防止破坏OS ,设置界限
件
寄存器;易于实现。
14
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
➢ 缺点
➢ 存储器利用率低
➢ 缺乏灵活性,程序所需应小于内存,否 则提供覆盖。
➢ 某些系统中安全性差。
➢ 信息不共享
最
新
➢ CPU 利用率低,周转时间长。
课
件
15
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
➢ 固定分区
最
绪进程换入内存。
新
➢ 请求调入(On demand)和预调入
课 件
(On prefetch)
4
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.1 存储管理概述
➢ 内存管理的内容
➢ 分配结构:
➢ 放置策略:
➢ 交换策略:
最
新
➢ 调入策略:
课
件
➢ 回收策略:
➢ 工作原理
➢ 在系统生成时,将内存划分为若干
各分区,每个分区的大小可以不等, 一经划分,不能更改。
➢ 系统对内存的管理和控制通过分区 说明表说明各区的区号,大小,起
始地址及状态。
最 新
➢ 特点
课
➢ 可使多个作业共享内存,但管理简
件
单,内存利用率太低,对工作负荷
16
CUIT
明确的作业比较合适。
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
课
应算法和最佳适应算法。
件
35
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
30
过重定位寄存器来自动修改访问存储器的地
2007-8-15 15:26
址。
15:26 15:26
CUIT
15:26 15:26
15:26
最 新 课 件
31
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
动态重定位分 区分配算法:
最 新 课 件
32
4.2 程序的装入和链接
➢ 3.动态运行时装入方式(Dynamic Run-Time Loading)
➢ 程序执行过程中,当访问指令或数据时,
才进行的地址变换方法,称为动态重定 位。
➢ 靠硬件地址变换机构实现的。
➢ 基地址寄存器(重定位寄存器) BR
最
➢ 程序虚地址寄存器VR
新 课
➢ 地址 MA=(BR)+(VR)
4.2 程序的装入和链接
➢ 程序的链接
➢ 静态链接:将各模块及库函数链接成一个装配 模块,以后不再拆开。
➢ 装入时动态链接:各目标模块装入内存时,边 装入边链接。
最 新
➢ 运行时动态链接:对模块的链接,是在程序执
课 行中,才进行链接。
件
13
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
➢ 程序的装入
➢ 绝对装入方式(Absolute Loading Mode)
➢ 编译程序产生绝对地址目标代码,由装入程序根据 装入模块中的地址,将程序和数据装入内存。
最 新 课 件
8
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.2 程序的装入和链接
4.3 连续分配存储管理方式
最 新 课 件
20
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
最 新 课 件
21
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
第四章 存储器管理
➢ 存储管理的机制
➢ 分区管理
➢ 分页管理
➢ 分段管理
最
➢ 虚拟存储器的概念
新
➢ 请求页式管理
课
➢ 页面置换算法
件
➢ 请求段式管理
1
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.1 存储管理概述
➢ 存储管理的目的
➢ 主存的分配和回收
4.3 连续分配存储管理方式
最 新 课 件
28
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
➢ 可重定位分区分配
最 新 课 件
29
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
➢ 分区的分配 ➢ 在未分配表中找 出一个足够大的 空白分区; ➢ 如比进程要求的 大,则分为两部 分;
最 新 课 件
25
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
➢分区的回收
➢检查回收的分区是否与空白区邻接, 如有则加以合并,上邻接,下邻接, 上下邻接。
34 支持虚拟存储系统。
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
➢交换空间的管理
➢文件区:离散分配,提高存储空间的利用 率;
➢对换区:连续分配,提高交换速度。
➢对换空间的分配与回收:注意空闲区的拼 接
最
新
➢交换区分配算法:首次适应算法、循环适
➢ 算法分析
➢ 特点:有助于多道程序设计;只需要界限地址 寄存器,用于存储保护;算法简单,易于实现。 但会产生碎片,降低存储器的利用效率;分区 的大小,受内存容量限制。
➢ 几种算法比较:搜索速度,释放速度,空闲区 的利用。
最 新 课 件
24
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
新
态工作方式相结合
课
件
➢ 用户态进程只能访问在界限寄存器所规
定范围内的内存部分,而核心态进程则
6
可访问整个内存地址空间。
2007-8-15 15:26
15:26 15:26
CUIT
15:26 15:26
15:26
4.2 程序的装入和链接
最 新 课 件
7
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
22
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
➢ 最佳适应算法
➢ 空白区按大小递增的顺序链在一起。变量 FREE 中的始端指针总指向最小的空白区。
➢ 特点:平均而言,查找时间较少;选择最适 合的空白区。形成很多小碎片;找一个大空 白区时较慢;回收时费时;先拼接,再把该 区插入适当位置。
➢ 2.可重定位装入方式(Relocatable Loading Mode)
➢ 重定位:在装入时对目标程序中的指令和 数据地址的修改过程。
最 新 课 件
9
CUIT
Load 1,12500
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.2 程序的装入和链接
➢原理:内存紧凑
➢地址映射
➢地址空间:在编译后,一个目标程序所限
定的地址,即地址空间仅仅是指程序用来访
问信息所用的一系列地址单元的集合,这些 单元编号称为逻辑地址(相对地址)。
➢存储空间:指主存中一系列存储信息的物
理单元的集合,这些单元的编号称为物理地
最 新
址或绝对地址。
课 件
➢实现
➢动态重定位技术:访问指令或数据时,通
最
➢ 最差适应算法
新 课
➢ 空白区按容量递减次序排列。
件
➢ 特点:分配时间快;剩下的空白分区仍可用;
各空白区比较均匀地减少,工作一段时间后,
23
就不能满足大空白区的要求;回收2麻007烦-8-15。 15:26
CUIT
15:26 15:26 15:26
15:26 15:26
4.3 连续分配存储管理方式
4.3 连续分配存储管理方式
最 新 课 件
17
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
最 新 课 件
18
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.3 连续分配存储管理方式
➢ 内存紧凑两种时机
➢ 在某个分区被回收时,如不与空白区邻接, 则立即进行内存紧凑。
➢ 在为作业分配而找不到足够大的空白区时 再进行内存紧凑。
最 新 课 件
33
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
➢ 分区管理算法
➢ 首次适应算法(First Fit)
➢ 每个空白区按地址递增的顺序链接在一起。
➢ 特点:尽量使用低端地址,以保持高址部
分的大空闲区;低址部分有很多小空白区, 增加查找时间开销。
➢ 循环首次适应算法
最
➢ 从上次查找的位置的下一个空闲空闲分区
新
开始查找。
课 件
➢ 空闲分区分布均匀,查找时间缩短,但系统 会缺少大的空闲分区。
➢ 提高内存利用率
➢ “扩充”内存容量
最
新 课
➢ 信息保护
件
3
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26
4.1 存储管理概述
➢ 内外存数据传输的控制
➢ 用户程序控制
➢ 操作系统控制
➢ 交换(Swapping) :由OS把那在内
存中处于等待状态的进程换出内存,就
5
CUIT
2007-8-15 15:26 15:26 15:26 15:内存信息的共享与保护
➢ 上下界保护法
➢ 保护键法
➢ 为每个被保护存储块分配一个单独的保
护键,在程序状态字中设置相应的开关
字段,不同的进程值不一样,匹配时, 方可进行访问。
最
➢ 界限寄存器与CPU 的用户态和核心
件
➢ 优点:可对内存进行非连续分配;提供
了实现虚存的基础;有利于程序段的共
11
享。
2007-8-15 15:26
15:26 15:26
CUIT
15:26 15:26
15:26
4.2 程序的装入和链接
最 新 课 件
12
CUIT
2007-8-15 15:26 15:26 15:26 15:26 15:26 15:26