第一章 操作系统引论
第一章 操作系统引论
1.0 什么是操作系统
1.1 操作系统的目标和作用
1.2 操作系统的发展过程
1.3 操作系统的基本特性
1.4 操作系统的主要功能
1.5 操作系统的结构设计
第一章 操作系统引论
1.0 什么是操作系统
1.0.1 计算机系统的组成
1.0.2 操作系统的定义
1.0.3 操作系统在软硬件层次中的地位
第一章 操作系统引论
1.0.1 计算机系统的组成
输入设备,键盘、鼠标、扫描仪
输出设备,显示器、打印机
外 存:软、硬盘、光盘、闪存
网络设备:网卡, 调制解调器等





软件
外部设备
系统软件
应用软件
硬件
运算器
控制器
主机
内存
CPU
随机存储器 (RAM)
只读存储器 (ROM)
高速缓冲存储器
操作系统,Windows,Unix,Linux
语言处理程序,C,Pascal,VB等
实用程序:诊断程序、排错程序等
办公软件包、数据库管理系统
第一章 操作系统引论
1.0.2 操作系统的定义
操作系统是计算机系统的一个系统软件,它直
接控制和管理计算机系统中的硬件及软件资源,合
理的组织计算机工作流程,以便有效的利用这些资
源为用户提供一个功能强大、使用方便和可扩展的
工作环境,从而在计算机与其用户之间起到接口的
作用。
操作系统( operating system,简称 OS)
第一章 操作系统引论
1.0.3 操作系统在软硬件层次中的地位
裸机
操作系统
编译软件
应用软件
第一章 操作系统引论
1.1 操作系统的目标和作用
1.1.1 操作系统的目标
1.1.2 操作系统的作用
1.1.3 推动操作系统发展的主要动力
第一章 操作系统引论
1.1.1 操作系统的目标
目前存在着多种类型的 OS,不同类型的 OS,
其目标各有所侧重 。 通常在计算机硬件上配置的
OS,
1,方便性
2,有效性
3,可扩充性
4,开放性
第一章 操作系统引论
1.1.2 操作系统的作用
1.OS作为用户与计算机硬件系统之间的接口
OS作为用户与计算机硬件系统之间接口的含
义是,OS处于用户与计算机硬件系统之间, 用户
通过 OS来使用计算机系统 。 或者说, 用户在 OS帮
助下, 能够方便, 快捷, 安全, 可靠地操纵计算
机硬件和运行自己的程序 。 应注意, OS是一个系
统软件, 因而这种接口是软件接口 。
第一章 操作系统引论
图 1-1 OS作为接口的示意图
用 户
应用程序
系统调用 命令 图标、窗口
操作系统
计算机硬件
第一章 操作系统引论
(1) 命令方式 。 这是指由 OS提供了一组联机
命令 (语言 ),用户可通过键盘输入有关命令,
来直接操纵计算机系统 。
(2) 系统调用方式 。 OS提供了一组系统调
用, 用户可在自己的应用程序中通过相应的系
统调用, 来操纵计算机 。
(3) 图形, 窗口方式 。 用户通过屏幕上的窗
口和图标来操纵计算机系统和运行自己的程序 。
第一章 操作系统引论
2,OS
处理机管理, 用于分配和控制处理机;
存储器管理, 主要负责内存的分配与回收;
I/O设备管理, 负责 I/O设备的分配与操纵;
文件管理, 负责文件的存取, 共享和保护 。
第一章 操作系统引论
3,OS用作扩充机器
? 把覆盖了软件的
机器称为扩充机器
或虚机器。
? OS包含了若干
个层次,因此在裸
机上覆盖 OS后,
便可获得一台功能
显著增强,使用极
为方便的多层扩充
机器或多层虚机器。
第一章 操作系统引论
1.1.3 推动操作系统发展的主要动力
1,不断提高计算机资源利用率
2,
3,器件的不断更新换代
4,计算机体系结构的不断发展
第一章 操作系统引论
1.2 操作系统的发展过程
1.2.1 无操作系统的计算机系统
1.2.2 单道批处理系统
1.2.3 多道批处理系统
1.2.4 分时系统
1.2.5 实时系统
第一章 操作系统引论
1.2.1 无操作系统的计算机系统
1,人工操作方式
电子管计算机时代 ( 1945年到 50年代中期 ), 无
操作系统 。 由手工控制作业的输入输出,通过控制台
开关启动程序运行 。
用户使用计算机的过程大致如下:先把程序纸带
装上输入机, 启动输入机把程序和数据送入计算机,
然后通过控制台开关启动程序运行, 计算完毕后, 用
户拿走打印结果, 并卸下纸带 。
缺点,(1) 用户独占全机 (2) CPU等待人工操作 。
第一章 操作系统引论
2,脱机输入 /输出 (Off-Line I/O)
用户使用计算机的过程大致如下:先把程序纸
带装上输入机, 在 外围机 的控制下, 输入到磁带
上, 当 CPU需要时, 从磁带高速调入内存 。
输出时, CPU直接高速把数据从内存送到磁
带, 然后在 另一台外围机 的控制下, 将磁带上的
结果通过输出设备输出 。
第一章 操作系统引论
脱机输入 /输出( Off- Line I/O)方式
脱离主机的情况下输入输出程序和数据
联机输入 /输出( On- Line I/O)方式
在主机的直接控制下输入输出程序和数据
第一章 操作系统引论
脱机 I/O
(1)减少了 CPU的空闲时间。
(2) 提高 I/O速度。
输入设备 外围机 磁盘
主机
外围机 输出设备

1-
2

机I/O



第一章 操作系统引论
1.2.2 单道批处理系统 (Simple Batch Processing System)
1,单道批处理系统的处理过程
图 1-3 单道批处理系统的处理流程
把下一个作业的源程
序转换为目标程序
源程序
有错吗?

装 配
目标程序
还有下
一个作业?


停止
运 行
目标程序

开始
第一章 操作系统引论
2.
单道批处理系统是最早出现的一种 OS,严
格地说, 它只能算作是 OS的前身而并非是现在
人们所理解的 OS。 尽管如此, 该系统比起人工
操作方式的系统已有很大进步 。 该系统的主要
(1) 自动性 。
(2) 顺序性 。
(3) 单道性。
第一章 操作系统引论
1.2.3 多道批处理系统
1,多道程序设计的基本概念
在单道批处理系统中, 内存中仅有一道作业,
它无法充分利用系统中的所有资源, 致使系统性
能较差 。 为了进一步提高资源的利用率和系统吞
吐量, 在 60年代中期又引入了多道程序设计技术,
由此而形成了多道批处理系统 (Multiprogrammed
Batch Processing System)。 在该系统中, 用户所
提交的作业都先存放在外存上并排成一个队列,
称为, 后备队列, ;然后, 由作业调度程序按一
定的算法从后备队列中选择若干个作业调入内存,
使它们共享 CPU和系统中的各种资源 。
第一章 操作系统引论
在 OS
(1)提高 CPU的利用率。
比较:
图 1-4 (a),单道程序的运行情况
图 1-4 (b),多道程序的运行情况 ( 以四道为例 )
(2) 可提高内存和 I/O
(3) 增加 系统吞吐量 (在单位时间内完成的总工
作量)。
第一章 操作系统引论
图 1-4 单道和多道程序运行情况
(b) 四道程序运行情况
t1 t2 t3 t4 t5 t6 t7 t8
结束中断
I/O 完成启动 I/O
I/O 中断请求
I/O 完成启动 I/O
I/O 中断请求用户程序
监督程序
I/O 操作
(a) 单道程序运行情况
程序 A
程序 A I/O 请求 程序 A I/O 完成
程序 B
程序 B I/O 请求
程序 C
程序 C I/O 请求
程序 D
程序 D I/O 请求
C I/O 完成 C 再被调度
程序 B I/O 完成
程序 A再被调度
程序 A
程序 B
程序 C
程序 D
调度程序
A完成
结束中断
第一章 操作系统引论
2,多道批处理系统的特征
(1)多道性。
(2) 无序性。
(3) 调度性。
第一章 操作系统引论
3,多道批处理系统的优缺点
(1)资源利用率高。
(2) 系统吞吐量大。
(3) 平均周转时间长。
(4) 无交互能力。
优点
缺点
作业的周转时间,是指从作业进入系统开始,
直至其完成并退出系统为止所经历的时间。
第一章 操作系统引论
4,多道批处理系统需要解决的问题
(1)处理机管理问题。
(2) 内存管理问题。
(3) I/O设备管理问题。
(4) 文件管理问题。
(5) 作业管理问题。
第一章 操作系统引论
1.2.4 分时系统
1,分时系统 (Time-Sharing System)
推动多道批处理系统形成和发展的动力是 提高
资源利用率 和 系统吞吐量 。
推动分时系统形成和发展的主要动力是 用户 的
需要:
( 1)人机交互
( 2)共享主机
( 3)便于用户上机
第一章 操作系统引论
分时系统 是指在一台主机上连接多个带有显示器
和键盘的终端,同时允许多个用户通过自己的键盘,
以交互的方式使用计算机,共享主机中的资源。
主机


第一章 操作系统引论
2,分时系统实现中的关键问题
如何使用户能与自己的作业进行交互, 即当
用户在自己的终端上键入命令时, 系统应能及时
接收并及时处理该命令, 再将结果返回给用户 。
即使有多个用户同时通过自己的键盘键入命令,
系统也应能全部地及时接收并处理 。
(1) 及时接收(多路卡和缓冲区)
(2) 及时处理 (作业直接进入内存,划分时
间片)
第一章 操作系统引论
3,分时系统的特征
(1)多路性。
(2) 独立性。
(3) 及时性。
(4) 交互性。
第一章 操作系统引论
1.2.5 实时系统
实时系统 (Real-Time System)是指系统能及时
(或即时 )响应外部事件的请求, 在规定的时间内完
成对该事件的处理, 并控制所有实时任务协调一致
地运行 。
1,应用需求
(1)实时控制:通常是指以计算机为中心的生产过
程控制系统和武器控制系统。
(2) 实时信息处理:通常是指对信息进行实时处理
的系统。
第一章 操作系统引论
2,实时任务
1)
(1)周期性实时任务
外部设备发出周期性的激励信号。
(2)非周期性实时任务
外部设备所发出的激励信号并无明显的周期性,
但都必须联系着一个截止时间 (Deadline)。它又可
分为:
①开始截止时间 ——任务在某时间以前必须开始执行
②完成截止时间 ——任务在某时间以前必须完成
第一章 操作系统引论
2)
(1) 硬实时任务 (hard real-time task)。 系统必须
满足任务对截止时间的要求, 否则可能出现难以预
测的结果 。
(2) 软实时任务 (Soft real-time task)。 它也联系
着一个截止时间, 但并不严格, 若偶尔错过了任务
的截止时间, 对系统产生的影响也不会太大 。
第一章 操作系统引论
3,实时系统与分时系统特征的比较
(1)多路性。
(2) 独立性。
(3) 及时性。
(4) 交互性。
(5) 可靠性。
第一章 操作系统引论
1.3 操作系统的基本特性
1.3.1 并发( Concurrence)
1.3.2 共享( Sharing)
1.3.3 虚拟( Virtual)
1.3.4 异步性( Asynchronism)
第一章 操作系统引论
1.3.1 并发 (Concurrence)
所谓并发是指在内存中放多道作业, 在 一个时
间段 上来看, 每一道作业都能不同程度地向前推进,
但在任何 一个时间点 上只能有一道占用 CPU。
与并发相关的两个概念:
?串行:在内存中每次只能放一道作业, 只有它完
全执行完后别的作业才能进入内存执行 。
?并行:存在于有多个 CPU的环境中, 在内存中放
多道作业, 在任一时间点上都可能有多道
作业在不同的 CPU上同时执行 。
第一章 操作系统引论
1.3.2 共享 (Sharing)
共享:系统中的资源可供内存中多个并发
执行的进程 ( 线程 ) 共同使用 。
两种资源共享方式:
? 互斥共享方式 ( 临界 /独占资源 )
? 同时访问方式
并发与共享互为条件!
第一章 操作系统引论
1.3.3 虚拟 (Virtual)
虚拟 是指通过某种技术, 将一个物理实体变
为若干个逻辑上的对应物 。
用来实现虚拟的技术, 被称为 虚拟技术 。
在现代 OS 中利用了多种虚拟技术, 分别用
来实现虚拟处理机, 虚拟存储器和虚拟设备等 。
第一章 操作系统引论
1.3.4 异步性 (Asynchronism)
异步性是指在多道程序的环境下, 每个程序
不知何时执行, 何时暂停, 即它们以不可预知的
速度向前推进 。
但同时, 操作系统应保证程序的执行结果是
可再现的 。 即只要运行环境相同, 一个作业的多
次运行都会得到相同的结果 。
第一章 操作系统引论
1.4 操作系统的主要功能
1.4.1 处理机管理功能
1.4.2 存储器管理功能
1.4.3 设备管理功能
1.4.4 文件系统管理
1.4.5 用户接口
第一章 操作系统引论
1.4.1 处理机管理功能
处理机是最重要的资源, 现代操作系统允许
多个程序共享处理机, 按照某种算法 ( 分时, 优先
级 ) 交替地使用处理机 。
处理机管理包括以下几方面:
? 进程控制
? 进程同步(进程互斥方式、进程同步方式)
? 进程通信
? 调度
第一章 操作系统引论
1.4.2 存储器管理功能
第二重要资源 。 存储器管理主要是为多道程
序的运行提供良好的环境 。
存储器管理要具备下列功能:
? 内存分配
? 内存保护:使多道程序间互不干扰
? 地址映射:把程序中的逻辑地址映射为物理
地址
? 内存扩充:用辅存扩充主存, 实现, 虚拟存
储器,
第一章 操作系统引论
最庞大, 琐碎的部分, 因为:
? 物理设备品种繁多, 用法各异
? 各种外设能和主机并行工作
? 主机与各类外设速度极不匹配, 级差很大
1.4.3 设备管理功能
第一章 操作系统引论
设备管理主要是完成用户的 I/O 请求 。 它的
主要功能包括:
? 缓冲管理:为设备提供缓冲区以缓和 CPU
同设备的 I/O速度不匹配的矛盾 。
? 设备分配
? 设备处理
第一章 操作系统引论
1.4.4 文件管理功能
文件管理主要是使用户能方便、安全地使用各
种信息资源。
主要功能包括:
? 文件存储空间的管理
? 目录管理
? 文件的读 /写管理和保护
第一章 操作系统引论
1.4.5 用户接口
为方便用户使用计算机,操作系统还应提供友
好的用户接口。
该接口通常是以下列方式提供给用户的:
?命令接口
?程序接口
?图形用户接口