48
1/48 第 4 第 第第第 第第 4.1 第第第 第第 . 第第第第 计计计计 = 计计 + 计计 计计 : 计计计计计计 计计计计计计计计计计计 计计 : 计计计计计计计计计计 计计计计 计计 计计计计计计计计计

第 4 章 操作系统基础

Embed Size (px)

DESCRIPTION

第 4 章 操作系统基础. 4.1 操作系统概述 一 . 基本概念 计算机系统 = 硬件 + 软件 硬件 : 构成计算机系统的物理部件和设备的总称。 软件 : 程序及文档资料的总称。核心是系统软件;系统软件的核心是 操作系统 。. ⒈ 操作系统的两大基本职能. ( 1 )面向机器 管理和控制计算机全部资源; 目的:提高系统效率。 ( 2 )面向用户 提供人机界面 目的:提供便捷的操作环境. 2. 操作系统的五大功能. 文件管理. 操作系统. 进程管理. 存储器管理. 作业管理. 设备管理. - PowerPoint PPT Presentation

Citation preview

Page 1: 第 4 章 操作系统基础

1/48

第 4 章 操作系统基础

4.1 操作系统概述 一 . 基本概念计算机系统 = 硬件 + 软件硬件 : 构成计算机系统的物理部件和设

备的总称。软件 : 程序及文档资料的总称。核心是

系统软件;系统软件的核心是操作系统。

Page 2: 第 4 章 操作系统基础

2/48

⒈操作系统的两大基本职能

( 1 )面向机器 管理和控制计算机全部资源; 目的:提高系统效率。( 2 )面向用户 提供人机界面 目的:提供便捷的操作环境

Page 3: 第 4 章 操作系统基础

3/48

2. 操作系统的五大功能

文件管理文件管理

进程管理进程管理

存储器管理存储器管理作业管理作业管理 设备管理设备管理

操作系统

Page 4: 第 4 章 操作系统基础

4/48

3 。操作系统的发展

1 )早期阶段 无操作系统的裸机 2 ) 第 2 阶段 --- 第 1 代操作系统

– 程序员和操作员有了分工;– 摆脱手工操作方式,有批处理服务

3 ) 第 3 阶段 --- 第二代操作系统– 新技术的使用:多道程序,并行处理,通

道技术、缓冲技术、中断技术等 4 )第 4 阶段 ---- 第三代操作系统

– 综合资源管理

Page 5: 第 4 章 操作系统基础

5/48

4. 常用的 OS

(1) MS-DOS 字符界面、 命令行方式(2) UNIX 中、小型机的 OS(3) WINDOWS 多任务、图形界面的 O

S (4) WINDOWS NT 网络操作系统

Page 6: 第 4 章 操作系统基础

6/48

5. 操作系统的分类1 、按处理器特点• 分时 分配 CPU 时间片,为多个用户服务• 实时 在较短时间内响应用户要求2 、按适用面分 : 专用 OS 和通用 OS

3 、按用户数量分:单用户和多用户 4 、按任务处理方式分:交互式 和批处理 5 、按硬件环境和控制方式分:集中式和分布式

Page 7: 第 4 章 操作系统基础

7/48

二 . CPU 及进程管理1 、程序的有关概念程序 为解决某个问题用程序设计语言 编写

的一系列指令的有序集合。程序的顺序执行 一个程序通常分为若干个具有一定独立

性的程序段,这些程序段是按逻辑步骤编排的,只有当当前程序段执行完成后,才将控制权转交到下一个程序段。

Page 8: 第 4 章 操作系统基础

8/48

程序顺序执行举例一

设有一个程序有三个程序段,分别执行 I (输入)、 C (计算)和 P (输出)操作。执行顺序为: I C P

逻辑顺序不能随意改变。

结果 数据

Page 9: 第 4 章 操作系统基础

9/48

程序顺序执行举例二

假设有 n 个作业,每个作业都由三个程序段:输入段 Ii 、计算段 Ci 、输出段 Pi 。

在早期单道程序系统中,作业执行流为:

作业 1 I1 C1 P1

作业 2 I2 C2 P2

作业 n In Cn Pn

作业执行顺序

Page 10: 第 4 章 操作系统基础

10/48

( 1 )单道程序处理

一次只处理一个程序,该程序独享系统资源。 特性

– 1 、顺序性 按规定的顺序执行。– 2 、封闭性 程序在执行过程中独享系统

资源,不受外界因素的干扰和影响。– 3 、可再现性 只要初始条件相同,无论以

何种方式、速度、重复执行多少次,结果是相同的。

Page 11: 第 4 章 操作系统基础

11/48

( 2 )多道程序处理 同时将多个程序装入内存并同时处理。 特点 : 并发性 设有三个程序,它们的执行步骤和顺序相同,

都是输入 Ii 、计算 Ci 、输出 Pi 。 1 )当第 1 个程序的输入操作 I1 执行完、执

行 C1 时,输入空闲,这时可执行第 2 个程序的输入 I2 ;时间上,操作 C1 和 I2 重叠。

2 )当 C1 执行完、执行 P1 时,处理机空闲,若这时 I2 已完成,就可以执行 C2 ,与此同时,输入机又空闲,可以执行第 3 个程序的 I3 。这样, P1 、 C2 和 I3 重叠。

Page 12: 第 4 章 操作系统基础

12/48

程序并发执行举例

程序 1 : I1 C1 P1

程序 2 : I2 C2 P2

程序 3 : I3 C3 P3

图中, C1 和 I2 、 P1 、 C2 和 I3 、 P2 和 C3在时间上都是重叠的。

Tt1 t3t2

Page 13: 第 4 章 操作系统基础

13/48

单道和多道程序处理的区别

单道:各逻辑步骤之间的关系是确定的、不受外界影响。

多道:并发处理存在直接或间接的相互依赖和相互制约的关系,从而使被处理的多道程序失去了程序固有的特性:封闭性、可再现性。

Page 14: 第 4 章 操作系统基础

14/48

2 、进程的概念

处理机管理 主要完成作业调度,进程调度和进程控制,实质是进程管理。

进程的几种不同定义 进程是程序的一次执行; 进程是一个程序在给定活动空间和初始环境下,

在一个处理机上的执行过程; 进程是程序在一个数据集合上运行的过程。

进程的生命周期– 由“创建”而产生,由“调度”而执行,因得

不到资源而“暂停”执行,最后由“撤消”而消亡

Page 15: 第 4 章 操作系统基础

15/48

进程的性质1 )动态性 描述程序在执行过程中的全部活动;2 )并发性 同时接受和处理多个进程;3 )异步性 不同进程在逻辑上相互独立,有各

自的运行“轨迹”;4 )制约性 由于计算机资源是有限的,不同进

程共享 CPU 和 I/O 通道及设备,因此相互制约

Page 16: 第 4 章 操作系统基础

16/48

进程的状态 1 )三种基本状态

– 就绪 已经获得投入运行所必需的一切资源,一旦分配到 CPU ,就可以立即执行。

– 运行 进程获得了 CPU 及其它一切所需资源,处在运行之中的状态。

– 等待 由于资源得不到满足,进程运行受阻,处于暂停状态,也称为阻塞状态。

2 )进程在生命周期中,不断在这三种状态之间进行转换。

Page 17: 第 4 章 操作系统基础

17/48

进程状态转换示意图

运行状态运行状态

等待状态等待状态

就绪状态

进程调度

等待资源

时间用完

获得资源

进程调度 程序

来自作业 调度

交作业 管理

Page 18: 第 4 章 操作系统基础

18/48

3 、进程管理

进程管理的核心是进程的控制和调度。 进程控制 对系统中全部进程实行有效的管理;

如创建新进程、撤消已结束进程。 进程调度 在就绪队列中选择哪个进程投入运行。

Page 19: 第 4 章 操作系统基础

19/48

4 。进程控制块—— PCB

进程的组成 程序 + 数据集合 + PCB

PCB 系统为创建的新进程建立一个 PCB 进程的唯一标识记录该进程的运行变化过程 系统通过 PCB对进程进行控制和管理。PCB 的组成

1) 进程标识符 2) 进程现行状态、 3) 中断现场保护区 4) 进程使用资源表 5) 进程优先级 6) 进程家族信息

Page 20: 第 4 章 操作系统基础

20/48

PCB 的组织形式PCB 是定长记录 , 在队列中采用两种组织方式。

(1) 线性表结构 1 、简单、易实现 2 、插入、删除操作费时

(2) 链表结构 1 、插入、删除操作简单 2 、需要额外的存储空间,实现较复杂

Page 21: 第 4 章 操作系统基础

21/48

PCB 线性表结构

PCB1

PCB2

PCB3

PCB4•••

PCBi

PCBi+1

PCBi+2

就绪表

等待表

就绪表起始地址

等待表起始地址

Page 22: 第 4 章 操作系统基础

22/48

PCB 链表结构

运行队列

就绪队列

等待队列

PCB

PCB PCB PCB

PCB PCB PCB

Page 23: 第 4 章 操作系统基础

23/48

5. 进程调度的任务及功能 进程调度任务

– 按一定的算法,动态地将处理机分配给就绪队列中的某个进程,使之执行。

进程调度功能–记录系统中所有进程的状态、优先数和所

用资源的情况。– 当 CPU 空闲时,按一定的算法将 CPU 分

配给某一进程、并确定 CPU 时间片的长度。

– 动态地调度进程、修改进程的状态、以及修改相应的排队队列。

Page 24: 第 4 章 操作系统基础

24/48

进程调度方式

剥夺方式 当“重要“或”系统“的进程出现时,暂停正在执行的进程,立即将 CPU分配给“重要”或”系统“的进程。非剥夺方式 让正在执行的进程继续执行,直

到该进程完成或发生其它事件,而改变为其它状态后,才移交 CPU 控制权。

Page 25: 第 4 章 操作系统基础

25/48

进程调度算法

调度算法的原则 1 、较少 CPU 空闲时间 ,提高资源利用率; 2 、对一般作业采用较合理的平均响应时间; 3 、应避免有的作业长期得不到响应的情况。常用的算法 优先数法 , 时间片轮流法 , 分级调度法 .确定优先数的方法 静态优先和动态优先

Page 26: 第 4 章 操作系统基础

26/48

静态与动态优先数法静态优先数法在系统创建进程时确定的,确定后在进程

运行期间不再改变。动态优先数法 进程优先数在进程运行中,随进程特性

的变化不断修改。DOS是单用户、单任务,进程独享系统

资源,不需要复杂的调度管理和算法。

Page 27: 第 4 章 操作系统基础

27/48

UNIX 的进程管理 UNIX 是多用户、多任务的 OS 。它将进

程状态细分为六种。

运行状态 1运行状态 1

暂停状态暂停状态

运行状态 2运行状态 2

终止状态终止状态

睡眠状态高优先 低优先

等待

状态唤醒就绪

状态

选中

落选

撤消

挂起

置运行

跟踪

Page 28: 第 4 章 操作系统基础

28/48

WINDOWS’98 的进程管理

1) 进程和线程相结合 : 每个进程至少包括一个线程,在执行时给每个线程分配时间片。

2) 多任务 OS ,采用抢占式的调度算法来实现多任务操作。

3) 两种调度程序 主调度程序 : 选择最高优先级的线程运行 时间片调度程序 依据线程的处理顺序及虚拟

机的当前状态,分配一个时间片给被选线程,并执行。

Page 29: 第 4 章 操作系统基础

29/48

三、内存管理

内存地址空间 : 物理地址空间不同系统下的寻址能力 : 系统 地址线 寻址能力

8086/8088 20 220=1M 80286 24 16M 80386 及以后 32 4G

内存的分区; OS区和用户程序区。

Page 30: 第 4 章 操作系统基础

30/48

1. 内存管理的主要功能

存储分配和释放 对用户程序区 存储空间的扩充 用于所需存储空间大于

可用主存容量, 采用自动覆盖和虚拟存储 地址变换 程序语言的符号地址空间 ( 逻辑地址 ) 到物理地址的转换 ,也称为重定位。

存储保护 多道程序系统中,系统进程和用户进程间、用户和用户进程间的存储空间的保护 , 依靠硬件实现。

Page 31: 第 4 章 操作系统基础

31/48

存储管理方法

单一连续区分配法 多连续区分配法 页式管理 段式管理

Page 32: 第 4 章 操作系统基础

32/48

2. 单一连续区分配法分配方式 1) 静态分配 在作业装入前,一次性将逻辑地

址全部转换为绝对地址 , 执行过程中不再改变。 特点 : 要求分配连续空间2) 动态分配 在执行过程中,动态实现。 通过硬件的地址变换机构实现

Page 33: 第 4 章 操作系统基础

33/48

单一连续区分配法示意图

已分配空间已分配空间

OS区域

用户区域

自由空间

特点:

定位容易,使用简单

但在多道程序处理 情况下,主存资源 利用率低

Page 34: 第 4 章 操作系统基础

34/48

单一连续区分配法示意图

基地址 =2000

CPUCPU ++

操作系统

自由空间

用户区域

主存空间定位寄存器

逻辑地址 =1500

2000

3500绝对地址

绝对地址 = 基地址 +逻辑地址

Page 35: 第 4 章 操作系统基础

35/48

3. 多连续区分配法概念 把主存空间划分为若干个连续的区域 ,

每个区域运行一个程序。硬件支持 增加边界寄存器 LOW 、 UP ,确定

分块的上、下边界。方法 固定分区和变长分区

Page 36: 第 4 章 操作系统基础

36/48

固定分区(多连续分区)

1) 主存划分为几个固定大小的连续区域; 2) 建立分配表,记录每个分区的大小、区号、起始地址、及占用标志等信息。

3) 作业调度时,根据作业表来确定程序的重定位地址。

Page 37: 第 4 章 操作系统基础

37/48

固定分区示意图

区号 长度 起址 状态1 8K 20K 已分

2 14K 30K 已分3 28K 50K 已分

4 76K 80K 未分

分 区 表操作系统作业 A

作业 B

作业 C

第 1 分区第 2 分区第 3 分区

未分区

20K

30K

50k

80K

主存“碎片”

Page 38: 第 4 章 操作系统基础

38/48

固定分区法特点

优点: 管理调度简单、分区策略适合于工作负荷比较确定的系统。

缺点: 主存”碎片”太多。

Page 39: 第 4 章 操作系统基础

39/48

变长分区(多连续分区))概念 根据要装入作业的实际大小划分区域,且分区个数也可以调整;用两张表管理主存:已分配分区表 P 和未分配分区表F 。

优点:主存“碎片”较小;缺点: 1) 选择剩下的空白区较小,无法使用; 2) 寻找一个较大的空白区费时 3) 需归并主存“碎片” ,移动信息

Page 40: 第 4 章 操作系统基础

40/48

多连续区分配法示意图

已分配分区表 P

未分配分区表 F

区号 长度 起始地址 状态 1 8K 20K 已分 2 16K 28K 已分 3 ——- —— 空表目

4 124K 108K 已分

区号 长度 起始地址 状态 1 64K 44K 可用 2 24K 232K 可用 3 ——- —— 空表目 4 •••• ••

5 •••• ••

操作系统 作业 1

作业 2

20K

28K

5 •••• •• 44K 可用分区 1

108K

操作系统

可用分区 1

作业 3

可用分区 2232K

Page 41: 第 4 章 操作系统基础

41/48

4. 分页管理

–页 作业地址空间划分的等长单位–块 主存空间划分的等长的单位–页表 地址重定位表 , 记录页号与该页

在主存中的块号的对应关系。– 分页管理 作业中的逻辑地址通过动态地址转换机制 转换为物理地址:

页号,页内地址 → 块号,块内地址 特点 : 可以将作业分配在不连续的物理

空间。

Page 42: 第 4 章 操作系统基础

42/48

分页管理法示意图

作业号 页表长 页表起址 状态

2 3 1032 已分 1 3 1024 已分

3 2 1040 已分 4 —— —— 空表目

作业表 JT 作业 A 作业 B

作业 C

页号 块号 页号 块号

页号 块号

0 4

1 5 2 6

0 71 10

0 2 1 3 2 8

Page 43: 第 4 章 操作系统基础

43/48

动态地址变换示意图

控制寄存器

作业地址空间 作业页表1 2 3 4

LOAD 1 , 2500

页表长度 页表始址有效地址

2 452

页号 块号0 4

1 6

2 8 8 452

页号

逻辑地址 =2×1024+452 =2500

1

100

1K

2K

2500

3K

物理地址 = 8×1024+452=8644

块大小 =1024

页大小 =1024

Page 44: 第 4 章 操作系统基础

44/48

5. 分段管理段 将程序划分为相互独立、具有一定逻辑功能的模块、且分别按名单独存放,这些模块称为段。

段内地址 (逻辑地址 ) 由段号和段内偏移量确定段表 系统为每个作业建立的表格 , 一个表项由

段号、段长度、段起始地址组成。

Page 45: 第 4 章 操作系统基础

45/48

分段管理示意图

66

0

1K

0100

500

0

300

0200

LOAD 1 , 1|100

Y : 12345

C :

0 段

1 段

2 段

3 段

段号长度 起始地址 0 1K 6K

1 500 8K 2 300 4K

3 200 9200

分段地址空间

分段表

OS

DATA

LOAD1 , 1| 100 主程序

SUB

WORK

12345

主存空间

Page 46: 第 4 章 操作系统基础

46/48

分段管理特点优点: 便于模块化处理 便于动态连接 便于分段共享缺点: 硬件成本高 地址转换花费时间兼有段式和页式优点可形成段页式

存储管理

Page 47: 第 4 章 操作系统基础

47/48

6. 常用 OS 的内存管理

(1) DOS采用单一连续分区的方法,但却

综合运用了多连续分区的管理技术。

(2) UNIX采用分段管理方法,存储分配采

用优先适应算法

Page 48: 第 4 章 操作系统基础

48/48

(3) Windows 98 存储器管理 1) 支持常规内存、扩展内存和扩充内存和虚拟内存管理( VM )。

2) VM 是是通过硬盘来完成与物理内存相关的功能;

3) 寻址 4GB 空间; 4) 虚拟内存管理的实现 :

换页进程 : 物理内存和硬盘之间移动数据 地址转换进程,将物理地址翻译成虚拟内

存地址或映射文件