1
第 1章 操作系统概论
本章知识点:
? 1.1 操作系统的作用
? 1.2 操作系统的演变
? 1.3 操作系统的主要成就
? 1.4 操作系统举例 (略 )
? 1.5 操作系统的主要研究课题
2
1.1 操作系统的作用
操作系统是计算机用户和计算机硬件之间的接
口程序模块,它是计算机系统的核心控制软件,
其职能是控制和管理系统内各种资源,有效地
组织多道程序的运行,从而为用户提供良好的
工作环境,达到使用方便、资源分配合理、安
全可靠等目的。
操作系统是现有软件系统中最复杂的软件之一。
Denning认为,到目前为止,在操作系统的研
究开发方面主要取得了进程、内存管理、信息
保护与安全、调度与资源管理和系统结构等五
项成就。
3
1.1.1 硬件系统和应用程序间的
界面
由 操作系统 定义的软、硬件和数据,给程
序员提供了方便的界面,使程序员和应用
程序更容易获取和使用计算机系统中的资
源、工具和服务。
4
1.1.1 硬件系统和应用程序间的界面
OS具有如下功能:
? ① 程序创建。
? ② 程序执行。
? ③ I/O设备的访问。
? ④ 控制对文件的访问。
? ⑤ 系统访问。
? ⑥ 查错和纠错。
? ⑦ 簿记。
5
1.1.2 作为资源管理者
作为资源管理器的操作系统:
I / O 设备内存
处理器 处 理 器
I /O 控制器
I /O 控制器
I /O 控制器操作系统
软 件
程序和
数 据
?
数 据
程 序
OS
??
6
1.1.3 推动操作系统发展的因素
操作系统的演变主要基于以下因素,
? ① 硬件升级以及新的硬件类型 ;
? ② 新服务 ;
? ③ 修补 ;
7
1.2 操作系统的演变
操作系统发展至今已有三十多年。设计
操作系统主要有两个目的, 第一,为程
序的开发和执行提供一个方便的环境 ;
第二,为保证计算机系统顺利执行,操
作系统对各个计算活动进行调度。
8
1.2.1 串行处理系统
最早的计算机,从 20世纪 40年代末到 50
年代中期,程序员直接与硬件接触,根
本没有 OS。 计算机运行在一个集成了指
示器、各种开关、一些输入设备以及一
个打印机的控制台之上。 早期的这种系
统存在两个问题:
? (1)上机安排
? (2)启动时间
9
1.2.2 简单批处理系统
简单批处理系统是专业计算机操作员(或机器)
按作业的性质将作业按类分成若干组,然后一组
一组地来运行作业。
在早期计算机系统中, 引进简单批处理系统可
以减少安装磁带, 装入程序和返绕磁带等有关的
工序浪费的时间, 因此, 也就减少了计算机的空
闲时间 。
批处理系统实质上不提供用户和程序之间的交
互功能。程序中的所有问题必须事先安排好,也
不能进行联机修改。 。
10
1.2.2 简单批处理系统
简单批处理系统的中心思想是,通过应
用一种被称为监控器的软件,使用户不
必再直接接触机器,而是先通过卡片机
和纸带机向计算机控制器提交作业,由
监控器将作业组织在一起构成一批作业,
然后将整批作业放入由监控器管理的输
入设备上,每当一个程序执行完毕返回
监控器时,监控器已自动装入下一个程
序。
11
1.2.2 简单批处理系统
批处理系统存在很多不方便之处, 主要有, 用
户不能与其作业交互以捕捉程序中的问题 。 用
户程序中的所有问题必须事先安排好, 否则程
序的排错就可能在转储信息上盲目地进行 。 此
外, 对一个用户作业而言, 可能需要较长的周
转时间 。
在批处理系统中, 为了避免有意或无意地读取
他人的卡片, 必须建立监控和用户两种操作态,
使其只有在监控态下才能读控制卡 。 通过建立
一组仅能在监控态下执行的特权指令, 操作系
统就能保证在任何时候都能控制整个系统 。
12
1.2.3 多道程序批处理系统
多道程序设计技术就是在内存中同时保
持若干道程序, 系统按某种调度策略交
替执行这些程序, 使 CPU保持最少的空
闲时间 。
多道程序设计的主要优点是通过将用户
的 CPU请求和 I/O请求重叠起来的办法来
有效地使用 CPU。 它设法让 CPU总有事
情可做,以此来提高 CPU的利用率。
13
1.2.3 多道程序批处理系统
设想一台电脑配备 256KB的可用内存空间 (未被
OS占用的 ),一个磁盘,一个终端和一台打印
机。 3个程序 JOB1,JOB2和 JOB3,同时被提交执
行,如下表所列。
JOB1 JOB2 JOB3
作业类型 偏重计算 偏重 I/O 偏重 I/O
执行时间 5 min 15 min 10 min
所需内存 50KB 100kB 80KB
是否需要磁盘 No NO Yes
是否需要终端 No Yes No
是否需要打印机 No No Yes
14
1.2.3 多道程序批处理系统
多道程序设计在提高资源利用率方面产生的效果
单道程序设计 多道程序设计
处理机使用 17% 33%
内存使用 30% 67%
磁盘使用 33% 67%
打印机使用 33% 67%
经过时间 30 min 15 min
吞吐率 6 jobs/h 12 jobs/h
平均响应时间 18 min 10 min
15
1.2.4 分时系统
分时系统是一种由调度策略和多道程序
设计技术所构成的, 同时供两个或多个
用户使用的一种经济实惠的系统 。
分时系统的主要优点是, 当程序正在执
行时, 允许用户与计算机交互, 从而大
大缩短了系统的响应时间, 增加了用户
调试程序和控制程序运行的灵活性 。
16
1.2.4 分时系统
分时系统通常采用的实现方法是,先 对
每一用户作业分定一个时间片,再按轮
转方式来执行这些作业。用户作业可以
继续运行直至其时间片执行完或发生一
个( I/O) 中断,才暂停此作业的运行
而让另一作业运行,暂停的作业则等到
再次轮到它时又可继续运行下去,系统
中的作业都用这种方式轮转执行。
17
1.2.5 实时系统
实时系统是在响应时间方面有严格制约的专用
系统。 实时系统与其他普通的系统之间的最大
不同之处就是要满足处理与时间的关系。
实时系统与分时系统的区别在于, 在分时系统
中,快速响应是需要的,但不是必需的 ; 在实
时系统中,处理事务必须在适合于此系统的特
定时间限额内完成。
18
1.2.5 实时系统
实时操作系统主要是为联机实时任务服务的,
相比分时系统它有其自身的特点,
? (1)与分时系统一样具有多路性和独立性。
? (2)对外部实时信号必须能及时响应,响应的时
间间隔要足以控制发出实时信号的那个环境。
? (3)整体性强。
? (4)有交互性,但这里人与系统的交互仅限于访
问系统中某些特定的专用服务程序。
? (5)要求有高可靠性和安全性,系统的效率则
放在第二位。
19
1.3 操作系统的主要成就
操作系统是现有软件系统中最复杂的系
统软件之一。到目前为止,操作系统已
取得了 5项主要成就:进程、内存管理、
信息的保护与安全性、调度与资源管理、
系统结构。 。
20
1.3.1 进程
进程是操作系统结构的基础。 进程 就是:
可并发执行的程序在一个数据集合上的
运行过程。 进程由以下 3部分组成:
? ① 一个可执行的程序;
? ② 该程序所需的相关数据 (变量, 工作空
间, 缓冲区等 );
? ③ 该程序的执行上下文 (Context)。
21
1.3.1 进程
典型的进程实现
···
i
b
h
进程索引
上下文
进程表列
内 存
···
···
数 据
程 序
上下文
数 据
程 序
j
进程 A
进程 B
i
寄存器
PC
基址寄存器 b
限制寄存器 h
···
其他寄存器
22
1.3.2 存储管理
操作系统的 5条存储管理原则:
? ① 进程隔离。
? ② 自动分配和管理。
? ③ 支持组件编程。
? ④ 长时间存储。
? ⑤ 保护和存取控制 。
23
1.3.2 存储管理
看待存储系统的两种不同观点
虚拟处理器
读、写
复制
文件 ?
虚拟存储器 长期存储设备
(b) 操作系统设计者观点
实际处理器
虚拟地址
映射器
( 地址转换器 ) 存储器
地 址
内 存
交 换
辅 存
(a) 用户观点
24
1.3.3 信息保护和安全性
同 计算机系统和存储在其中的信息的存
取控制 有关的 4种保护策略:
? ①不共享。
? ②共享原始程序或数据文件。
? ③无存储子系统。
? ④控制信息的分布。
25
1.3.3 信息保护和安全性
同操作系统有关的安全和保护工作可分
为以下 3类:
? ①访问控制。
? ②信息流控制。
? ③确认。
26
1.3.4 调度和资源管理
操作系统的核心任务之一就是管理各种可
获得的资源以及合理地调度它们 。 任何资
源分配和调度策略都必须考虑公平性, 不
同敏感性以及效率 。
27
1.3.5 系统结构
随着操作系统性能的增强,以及基础硬
件复杂性的增加,操作系统的大小和复
杂性也不断增加,这就 导致了许多问题 。
为了有效管理系统资源和控制操作系统
的复杂性,人们开始极大地重视操作系
统的软件结构。对大型操作系统,仅仅
组件化编程还是不够的, 现在越来越多
地用到体系结构分层和信息抽象技术。
28
1.5 操作系统的主要研究课题
进程描述
和控制
内存管理 并发控制调 度
I / O 管理 文件管理
安全性
网络与分布
计算
29
The end
Thanks!
第 1章 操作系统概论
本章知识点:
? 1.1 操作系统的作用
? 1.2 操作系统的演变
? 1.3 操作系统的主要成就
? 1.4 操作系统举例 (略 )
? 1.5 操作系统的主要研究课题
2
1.1 操作系统的作用
操作系统是计算机用户和计算机硬件之间的接
口程序模块,它是计算机系统的核心控制软件,
其职能是控制和管理系统内各种资源,有效地
组织多道程序的运行,从而为用户提供良好的
工作环境,达到使用方便、资源分配合理、安
全可靠等目的。
操作系统是现有软件系统中最复杂的软件之一。
Denning认为,到目前为止,在操作系统的研
究开发方面主要取得了进程、内存管理、信息
保护与安全、调度与资源管理和系统结构等五
项成就。
3
1.1.1 硬件系统和应用程序间的
界面
由 操作系统 定义的软、硬件和数据,给程
序员提供了方便的界面,使程序员和应用
程序更容易获取和使用计算机系统中的资
源、工具和服务。
4
1.1.1 硬件系统和应用程序间的界面
OS具有如下功能:
? ① 程序创建。
? ② 程序执行。
? ③ I/O设备的访问。
? ④ 控制对文件的访问。
? ⑤ 系统访问。
? ⑥ 查错和纠错。
? ⑦ 簿记。
5
1.1.2 作为资源管理者
作为资源管理器的操作系统:
I / O 设备内存
处理器 处 理 器
I /O 控制器
I /O 控制器
I /O 控制器操作系统
软 件
程序和
数 据
?
数 据
程 序
OS
??
6
1.1.3 推动操作系统发展的因素
操作系统的演变主要基于以下因素,
? ① 硬件升级以及新的硬件类型 ;
? ② 新服务 ;
? ③ 修补 ;
7
1.2 操作系统的演变
操作系统发展至今已有三十多年。设计
操作系统主要有两个目的, 第一,为程
序的开发和执行提供一个方便的环境 ;
第二,为保证计算机系统顺利执行,操
作系统对各个计算活动进行调度。
8
1.2.1 串行处理系统
最早的计算机,从 20世纪 40年代末到 50
年代中期,程序员直接与硬件接触,根
本没有 OS。 计算机运行在一个集成了指
示器、各种开关、一些输入设备以及一
个打印机的控制台之上。 早期的这种系
统存在两个问题:
? (1)上机安排
? (2)启动时间
9
1.2.2 简单批处理系统
简单批处理系统是专业计算机操作员(或机器)
按作业的性质将作业按类分成若干组,然后一组
一组地来运行作业。
在早期计算机系统中, 引进简单批处理系统可
以减少安装磁带, 装入程序和返绕磁带等有关的
工序浪费的时间, 因此, 也就减少了计算机的空
闲时间 。
批处理系统实质上不提供用户和程序之间的交
互功能。程序中的所有问题必须事先安排好,也
不能进行联机修改。 。
10
1.2.2 简单批处理系统
简单批处理系统的中心思想是,通过应
用一种被称为监控器的软件,使用户不
必再直接接触机器,而是先通过卡片机
和纸带机向计算机控制器提交作业,由
监控器将作业组织在一起构成一批作业,
然后将整批作业放入由监控器管理的输
入设备上,每当一个程序执行完毕返回
监控器时,监控器已自动装入下一个程
序。
11
1.2.2 简单批处理系统
批处理系统存在很多不方便之处, 主要有, 用
户不能与其作业交互以捕捉程序中的问题 。 用
户程序中的所有问题必须事先安排好, 否则程
序的排错就可能在转储信息上盲目地进行 。 此
外, 对一个用户作业而言, 可能需要较长的周
转时间 。
在批处理系统中, 为了避免有意或无意地读取
他人的卡片, 必须建立监控和用户两种操作态,
使其只有在监控态下才能读控制卡 。 通过建立
一组仅能在监控态下执行的特权指令, 操作系
统就能保证在任何时候都能控制整个系统 。
12
1.2.3 多道程序批处理系统
多道程序设计技术就是在内存中同时保
持若干道程序, 系统按某种调度策略交
替执行这些程序, 使 CPU保持最少的空
闲时间 。
多道程序设计的主要优点是通过将用户
的 CPU请求和 I/O请求重叠起来的办法来
有效地使用 CPU。 它设法让 CPU总有事
情可做,以此来提高 CPU的利用率。
13
1.2.3 多道程序批处理系统
设想一台电脑配备 256KB的可用内存空间 (未被
OS占用的 ),一个磁盘,一个终端和一台打印
机。 3个程序 JOB1,JOB2和 JOB3,同时被提交执
行,如下表所列。
JOB1 JOB2 JOB3
作业类型 偏重计算 偏重 I/O 偏重 I/O
执行时间 5 min 15 min 10 min
所需内存 50KB 100kB 80KB
是否需要磁盘 No NO Yes
是否需要终端 No Yes No
是否需要打印机 No No Yes
14
1.2.3 多道程序批处理系统
多道程序设计在提高资源利用率方面产生的效果
单道程序设计 多道程序设计
处理机使用 17% 33%
内存使用 30% 67%
磁盘使用 33% 67%
打印机使用 33% 67%
经过时间 30 min 15 min
吞吐率 6 jobs/h 12 jobs/h
平均响应时间 18 min 10 min
15
1.2.4 分时系统
分时系统是一种由调度策略和多道程序
设计技术所构成的, 同时供两个或多个
用户使用的一种经济实惠的系统 。
分时系统的主要优点是, 当程序正在执
行时, 允许用户与计算机交互, 从而大
大缩短了系统的响应时间, 增加了用户
调试程序和控制程序运行的灵活性 。
16
1.2.4 分时系统
分时系统通常采用的实现方法是,先 对
每一用户作业分定一个时间片,再按轮
转方式来执行这些作业。用户作业可以
继续运行直至其时间片执行完或发生一
个( I/O) 中断,才暂停此作业的运行
而让另一作业运行,暂停的作业则等到
再次轮到它时又可继续运行下去,系统
中的作业都用这种方式轮转执行。
17
1.2.5 实时系统
实时系统是在响应时间方面有严格制约的专用
系统。 实时系统与其他普通的系统之间的最大
不同之处就是要满足处理与时间的关系。
实时系统与分时系统的区别在于, 在分时系统
中,快速响应是需要的,但不是必需的 ; 在实
时系统中,处理事务必须在适合于此系统的特
定时间限额内完成。
18
1.2.5 实时系统
实时操作系统主要是为联机实时任务服务的,
相比分时系统它有其自身的特点,
? (1)与分时系统一样具有多路性和独立性。
? (2)对外部实时信号必须能及时响应,响应的时
间间隔要足以控制发出实时信号的那个环境。
? (3)整体性强。
? (4)有交互性,但这里人与系统的交互仅限于访
问系统中某些特定的专用服务程序。
? (5)要求有高可靠性和安全性,系统的效率则
放在第二位。
19
1.3 操作系统的主要成就
操作系统是现有软件系统中最复杂的系
统软件之一。到目前为止,操作系统已
取得了 5项主要成就:进程、内存管理、
信息的保护与安全性、调度与资源管理、
系统结构。 。
20
1.3.1 进程
进程是操作系统结构的基础。 进程 就是:
可并发执行的程序在一个数据集合上的
运行过程。 进程由以下 3部分组成:
? ① 一个可执行的程序;
? ② 该程序所需的相关数据 (变量, 工作空
间, 缓冲区等 );
? ③ 该程序的执行上下文 (Context)。
21
1.3.1 进程
典型的进程实现
···
i
b
h
进程索引
上下文
进程表列
内 存
···
···
数 据
程 序
上下文
数 据
程 序
j
进程 A
进程 B
i
寄存器
PC
基址寄存器 b
限制寄存器 h
···
其他寄存器
22
1.3.2 存储管理
操作系统的 5条存储管理原则:
? ① 进程隔离。
? ② 自动分配和管理。
? ③ 支持组件编程。
? ④ 长时间存储。
? ⑤ 保护和存取控制 。
23
1.3.2 存储管理
看待存储系统的两种不同观点
虚拟处理器
读、写
复制
文件 ?
虚拟存储器 长期存储设备
(b) 操作系统设计者观点
实际处理器
虚拟地址
映射器
( 地址转换器 ) 存储器
地 址
内 存
交 换
辅 存
(a) 用户观点
24
1.3.3 信息保护和安全性
同 计算机系统和存储在其中的信息的存
取控制 有关的 4种保护策略:
? ①不共享。
? ②共享原始程序或数据文件。
? ③无存储子系统。
? ④控制信息的分布。
25
1.3.3 信息保护和安全性
同操作系统有关的安全和保护工作可分
为以下 3类:
? ①访问控制。
? ②信息流控制。
? ③确认。
26
1.3.4 调度和资源管理
操作系统的核心任务之一就是管理各种可
获得的资源以及合理地调度它们 。 任何资
源分配和调度策略都必须考虑公平性, 不
同敏感性以及效率 。
27
1.3.5 系统结构
随着操作系统性能的增强,以及基础硬
件复杂性的增加,操作系统的大小和复
杂性也不断增加,这就 导致了许多问题 。
为了有效管理系统资源和控制操作系统
的复杂性,人们开始极大地重视操作系
统的软件结构。对大型操作系统,仅仅
组件化编程还是不够的, 现在越来越多
地用到体系结构分层和信息抽象技术。
28
1.5 操作系统的主要研究课题
进程描述
和控制
内存管理 并发控制调 度
I / O 管理 文件管理
安全性
网络与分布
计算
29
The end
Thanks!