操作系统_存储管理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作系统需解决各活动之间的切换,控制各活动之间的影 响及同步操作等问题。
➢ 共享性:资源共享。相关问题是如何合理分配资源。
➢ 不确定性:与确定性相互依存,同一程序、相同的数据 要求运行结果是确定的。但系统对发生的不可预测的事 件的响应应该是不确定的,如程序运行中的错误处理及 各种外设的中断申请都应该是不确定的。
不能由CPU直接读取。
高速缓存
程序和数据可以直接
主存
被CPU访问
外存
程序和数据必须交换到 内存后才能被CPU访问
第三章 操作系统
17
2、存储管理功能 (内存分配、地址转换、存储保护和内存扩充)
1) 内存分配:解决如何合理分配内存空间保证以保 证各作业互不冲突,提高内存的利用率和运行效 率。
2. 早期批处理阶段:
❖ 早期联机批处理:
❖ 早期脱机批处理----用磁带进行I/O 操作, 减少了人工干预的时间
第三章 操作系统
6
3. 执行系统阶段
采用通道和中断技术,实现 I/O 与处理机并发运行。
通道是一种硬件,它控制一台或几台外设,使外设 和内存之间直接进行数据传输,而与CPU无关。
第三章 操作系统
19
❖ 重定位:当用户程序调入内存时,需把相对地址转换为
绝对地址,同时要对程序中与地址相关的指令进行修改, 这一过程称为重定位。
静态重定位:通过CPU中一对界地址寄存器来实现。集中 一次进行地址转换,在执行过程中不再改变。
下界:作业在内存中的起始地址
上界:作业在内存中的终止地址
第三章 操作系统
3
3.1.1 什么是操作系统?
操作系统是最基本的系统软件,是用户和计算机之间的接口, 是控 制和管理计算机硬件和软件资源,合理的组织计算机工作流程以 及方便用户的程序的集合。
硬件
计算机 系统
软件
系统 软件
OS, DOS, UNIX, WIN9X, WIN2000, XP
DBMS, Foxpro, Oracle,
1. 分区分配 2. 可重定位分区分配 3. 覆盖技术 4. 交换技术
第三章 操作系统
22
1、分区分配: 适应于小型、微型机百度文库的多道系统
思想:将内存划分为若干个分区,每个分区分配给一个作业, 用静态重定位方式进行地址转换,用硬件措施保证各作业互 不干扰。划分方式上有固定分区和可变分区两种。
1) 固定分区分配:存储器事先被划分为若干个大小不 等的分区,存储管理程序根据调入内存作业的最大 存储量,找出一个足够大的分区分配给它。
• 单道分时:内存中只留一道作业,开销大。
• 前台和后台分时:前台无作业时运行后台作业。
• 多道分时:内存放多道作业,轮流运行,不必调进 调出。
第三章 操作系统
10
3.1.2 操作系统的分类
3. 实时系统:
特点:要求对外部发生的随机事件作出及时响应,
并对它进行及时处理。适用于工业控制系
或事务处理系统。有较强的中断处理机构,
第三章 操作系统
8
3.1.2 操作系统的分类
三大类:多道批处理系统、分时系统、实时系统
1. 多道批处理操作系统
多道--内存中可存放多道作业; 批处理--用户与作业之间没有交互作用,用户不能直接控制作
业的运行。 作业--用户要求计算机执行的工作。由作业步组成。
作业被调入系统,先存放在外存缓冲区中,形成 作业队列,系统按照一定的调度原则或根据作业的优 先程度从作业中调出一个或多个作业进入内存运行。
n
左邻居
右邻居
第三章 操作系统
P-1 P
P+n
30
空间回收例题
在空间分配例题中,当作业P4完成后,应 回收P4分区到空闲块链表中,见图a;当P5作业 完成后,回收使由于其左右邻居均为空闲块, 因此应进行合并,见图b所示。
第三章 操作系统
31
P1 P2 P3
P4
P5
P0
av
1901
3501
0 900
系统为每个分区设置一个目录,说明该分区的大小、 起始位置、分配状况等信息,所有分区目录构成一 个内存状态表。
特点:分区大小固定,状态表的结构可以是顺序表 也可以是链表;分区的分配和回收算法简单。
缺点:内存利用率低,有“碎片”,作业所需空间 和分区大小不一定恰好相等。
第三章 操作系统
23
区号 容量 起始位置 状态 1 8kB 312kB 已分配 2 32kB 320kB 已分配 3 32kB 352kB 未 用 4 120kB 384kB 未 用 5 520kB 504kB 已分配
2、存储管理功能
2)地址转换或重定位
❖ 地址空间和存储空间
名空间:源程序存放的空间(一般从0开始) 地址空间:目标程序占有的地址范围(逻辑地址或相对地 址的集合)
存储空间:目标程序装入内存后占用的一系列物理单元的 集合(物理地址或绝对地址)
名空间
源程序
地址空间 0
目标程序
x
存储空间 0
640kB
内存
➢ 处理器管理:解决CPU的分配策略、实施方法, 以及资源的分配和回收等。(进程控制、进程 同步、进程调度、进程通信)
➢ 存储管理:解决多道程序在内存中的分配,当 进程被撤消时回收分配出去的内存,通过对内 外存联合管理来扩大存储空间。(内存分配、 内存保护、内存扩充)
➢ 设备管理:对设备进行分配、调度,为用户使 用I/O设备提供方便的命令和操作界面。
适用于大型计算机系统,要求对资源的分配及作 业的调度有精心的设计,管理功能强。
3.1.2 操作系统的分类
2. 分时系统:多个用户分享同一台计算机,将CPU在 时间上分割成很小的时间段,称为时间片,系统将 CPU的时间片轮流分配给多个用户,每个用户通过 自己的终端直接控制程序的运行,进行人机交互。 由于时间片分割很小,使每个用户感觉自己独占计 算机一样。(多路性、交互性、独占性)
4) 内存扩充:当作业的地址空间大于分配到的存储空
间时需采取内存扩充技术。
常采用的内存扩充技术:覆盖、交换、虚拟存储
第三章 操作系统
21
3.2.2 实存储管理
当作业要求调入内存时,存储管理要提供 一个不小于作业地址空间的连续存储空间,当 空间不够时,常采用覆盖或交换技术扩充内存。
几种常用的实存储管理方法:
0 1500
P4 0
P0 0
P4 释放
图a
P1 P2 P3
应用 软件
语言编译软件:C, Basic等
3.1.1 什么是操作系统?
计算机系统中硬件和各种软件构成层次关系,硬 件是核心(裸机)。
最终用户
应用软件 系统实用程序
操作系统 计算机硬件
程序员
操作系统设 计人员
操作系统的发展过程
手工操作阶段早期批处理阶段执行系 统阶段多道程序系统
1. 手工操作阶段:程序的读入、编译、装配和 执行都由操作人员人工控制。速度慢、效 率低。
➢ 虚拟性:物理上的实体->逻辑上的对应物。
第三章 操作系统
14
3.2 存储管理
➢ 3.2.1 存储管理的功能及有关概念 ➢ 3.2.2 实存储管理 ➢ 3.2.3 虚拟存储管理
第三章 操作系统
15
3.2.1 存储管理的功能及有关概念
存储管理分为两大类: 实存储管理 虚拟存储管理。
程序一级的接口:用户可在程序中直接调用,
通过系统调用命令向系统提出各种 资源请求和服务请求。
作业控制语言和操作命令:批处理系统中采用。
(分时和实时系统中用户通过终端和键盘提出请求 )
3.1.3 操作系统的功能和特性
2. 操作系统的特性(4个基本特性) ➢ 并发性:(OS的最根本特性)可同时运行多道程序,操
➢ (设备分配、 传输控制、设备独立性)
3.1.3 操作系统的功能和特性
1. 操作系统的功能
➢ 文件管理(文件系统) :唯一地标识计算机系统 中的每组信息,以便能对它们进行合理的访问 和控制。(文件存储空间管理、目录管理、文件 操作管理、文件保护)
➢ 用户接口:提供两种用户接口,以便用户提出 请求和说明服务。
第三章 操作系统
26
可变分区分配
占用块 空闲块
图 3.8 P1
P3 P4
P6
P8
L link tag size R link
图 3.9 控制信息区
tag
UP link
第三章 操作系统
27
空间分配例题
设某系统用户区大小为5000字节,地址为1 ~ 5000,初始状态如下图a所示,依次分配给5个作业 P1 ~ P5, 作业占用区大小分别为1000,300,600, 900,700。 P0 为余下的空闲块,各占用块和空闲块 情况如下页图b和c所示。
OS 1k 9k 33k 121k
1区
空余空间:
2区
7+23+31+11 = 72k
3区
4区
25 第三章 操作系统
2)可变分区分配(动态存储管理):内存利用率高
只有当作业调入内存时,才按作业大小建立分区,当 作业执行完后又释放此空间。采用链结构来构造分区 目录。
❖ 空间分配:由于多作业调入内存运行,有些作业运行 结束后释放所占空间,内存区呈现占用块与空闲块交 叉存在的状态,如图3.8所示。在每块开始与结束的几 个字节中存放有关本块状态的信息,称为控制信息区, 并把所有的空闲块链成一个双向链表,如图3.9所示。 其中,L link和 Rlink为链表左右指针, tag=0表示空闲 块, tag=1表示占用块, size 是本块的大小,up link 为本块的起始地址。
312kB 320kB 352kB 384kB 504kB 1024kB
内存 OS
8kB 32kB 32kB 120kB 520kB
内存状态表
返回
例:某系统使用固定分区分配管理,现有1k、9k、33k、121k 多道作业进入内存,画出占有空间情况,问浪费多大?
20k 28k 60k 124k 256k
x’ = x +
物理地址 逻辑地址
逻辑地址空间
D
下界地址 物理地址空间
x
上界
L
下界
D
D
x’
L 界地址寄存 器
动态重定位:在程序执行过程中进行,当CPU访问内 存指令时由动态变换机构自动进行地址转换。
3) 存储保护:
在静态重定位系统中,应满足D≤ x’ <L, 执行错误处理程序。
否则
对动态重定位系统的存储保护将结合有关的存储方 式来讨论
中断技术使系统能暂时中止正在运行的程序,转向 中断处理程序,而被终止的程序在一定条件下又能 重新恢复运行。
各种中断程序及负责输入输出的控制程序统称为执 行系统, 常驻内存。
第三章 操作系统
7
4. 多道程序系统
执行系统中,CPU一次只能执行一个作业。
多道程序是指在一台机器上同时运行若干道程 序。系统按照各个程序在各个时刻对资源的需 求进行时间分配。
计算机基础教学课件
第三章 操作系统
--上海大学 通信与信息工程学院 安平
3.1 引论 3.2 存储管理 3.3 处理器管理 3.4 设备管理 3.5 文件管理 3.6 操作系统的用户接口
第三章 操作系统
2
3.1 引论
➢ 3.1.1 什么是操作系统 ➢ 3.1.2 操作系统的分类 ➢ 3.1.3 操作系统的功能和特性
P1 P2 P3
1000 300 600
P4 P5 P0
900 700 1500
图a
第三章 操作系统
28
1
1 1000
P1 1
1001
1 300
P2 1
1301
1 600
P3 1
1901
1
1 900 P4
2801
1 700
P5 1
图b—占用块
av
3501
0 1500 P0
0
图c—空闲块
❖ 空间回收:当作业执行完毕后,系统将空间收回,插 入到空闲块链表中,但插入时还要判断左右相邻块是 否空闲,若是则合并成一个较大的空间,它可通过每一 块中头尾的控制信息区的tag标志来判断。设当前回收 块起始地址为p,大小为n,则应判断它左邻居p-1和右邻 居p+n的tag是否为0,若不为0则将当前回收块插入到 空闲块链表中。若出现有tag为0的相邻块,则应修改 原空闲块的大小,将本回收块和相邻块合并。
可靠性要求比较高。
包 实时过程控制:用于工业生产的自动控制、导弹发射和飞机

飞行等控制实验过程控制。
实时信息处理:对信息作及时处理,用于机票预订、银行或
商店的数据处理等
三种操作系统经常组合起来使用, 形成通用操作系统。
第三章 操作系统
11
3.1.3 操作系统的功能和特性
1. 操作系统的功能(5个)
1、存储器的分级结构
高速缓冲存储器(cache):又称缓存,速度快、容量小、价格贵, 用来存放使用最频繁的信息,以及缓冲CPU与内存之间的速度 差。
主存储器:又称内存,是程序运行时存放系统和用户的指令及数 据的设备。
外部存储器:又称外存,如硬盘、磁盘、光盘等;存取速度慢、
容量大、价格便宜;可以存放大量的系统和用户的程序及数据;
相关文档
最新文档