操作系统原理第二章 操作系统的组织结构
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
当中断发生时,必须立即把现场信息保存在主存中。
恢复现场
程序重新运行之前,把保留的该程序现场信息从主存中送 至相应的指令计数器、通用寄存器或一些特殊的寄存器中。
15
2.4 中断机制
程序状态字 (psw)
程序状态字是反映程序执行时机器所处的现行状态 的代码。 主要内容包括:
①程序现在应该执行哪条指令; ②当前指令执行情况; ③处理机处于何种工作状态; ④程序在执行时应该屏蔽哪些中断; ⑤寻址方法、编址、保护键;
第二章 操作系统的组织结构
2.1 操作系统虚拟机 2.2 操作系统逻辑结构
2.3 处理机的状态
2.4 中断机制 2.5 UNIX系统结构
2.1 操作系统虚拟机
1. 什么是操作系统虚 拟机
在裸机上配置了操作系 统程序后就构了操作系 统虚拟机。
应用程序 扩充后的机器
裸机
操作系统
操作系统的核心在裸机 上运行,用户程序在扩 充后的机器上运行。
3. 中断概念:定义、类型。
4. 中断响应的定义、实质。
5. 中断处理过程。
6. 向量中断概念。
26
20
表2.1 PDP11系列机中断向量地址及中断向量单元内容
中断类型
终端输入 终端输出 纸带输入
中断向量
060 062 064 066 070 072 074 076 100 102 104 106 200 202 220 222
PC及PS值
终端输入处理程序入口地址 0200 终端输出处理程序入口地 0200 纸带输入处理程序入口地址 0200 纸带输出处理程序入口地址 0200 电源时钟处理程序入口地址 0300 程序时钟处理程序入口地址 0300 行式打印机处理程序入口地址 0200 RK磁盘处理程序入口地址 0240
PC及PS值
trap 340+0 trap 340+1 trap 340+2 trap 340+3 trap 340+4 trap 340+5 trap 340+6 trap 340+7 trap 340+7 trap 340+8
22
TRAP指令
奇偶错 程序中断
浮点错
2.4 中断机制
5 软件的中断处理过程
系统核以外各层具有各种资源管理 功能并为用户提供各种服务。 分层的组织结构在一些操作系统中 只是作为一种指导性原则。 初级中 断处理 资源分配和调度 文件存取 I/O处理 存储管理 进程控制 处理机 进程通信 分配
裸机
5
2.3 处理机的状态
1. 设置处理机状态的目的
为操作系统建立一个保护环境,采用的办法是区 分处理机的工作状态。
改变机器状态的指令 修改特殊寄存器的指令 涉及外部设备的输入/输出指令
在下列情况下,由用户态自动转向管态:
① 用户进程操作系统,要求操作系统的某种服务,这种访问称为系统 功能调用。 ② 在程序执行时,发生一次中断。 ③ 在一个用户进程产生一个错误状态,将被处理为内部中断。 ④ 用户态下执行特权指令,作为特殊类型的错误,按③处理。
从管态返回用户态是用一条指令实现的,这条指令本身也是特 权指令。
9
2.4 中断机制
1 中断概念
所谓中断是指某个事件 (例如电源掉电、定点 正在执行的 用户程序 加法溢出或I/O传输结 束等) 发生时,系统中 止现行程序的运行、引 出处理事件程序对该事 件进行处理,处理完毕 后返回断点,继续执行。
CPU1
软件 分时 硬件 CPU3 主存 主存管理 假脱机打印 打印机
4
CPU2 …
虚拟主存1
虚拟主存2 … 打印机1
打印机2 …
2.2 操作系统逻辑结构
整个操作系统在结构上类似一个洋葱 头,它由若干层组成,每一层都提供 一组功能,这些功能只依赖于该层以 内的各层。 系统核具有初级中断处理、外部设 备驱动、在进程间切换处理机及实 施进程控制和通信功能,提供一种 进程可存在和活动的环境。
用户态(User mode)——目态
用户程序执行时机器所处的状态。在此状态下禁止使用特权 指令,不能直接取用资源与改变机器状态,并且只允许用户 程序访问自己的存储区域。
7
2.3 处理机状态
管态
操作系统的程序执行 使用全部指令
用户态
用户程序执行 禁止使用特权指令 只允许用户程序访 问自己的存储区域。
3
2.1 操作系统虚拟机
操作系统的虚拟技术 CPU调度(分时共享) 现代操作系统的虚拟存储技术(逻辑地址与物理地址的映射) 设备管理中的虚拟设备和虚拟分配技术 虚拟技术的原理: 系统硬件包括CPU、主存和各种外部设备,每台硬部件被操作 系统复制成多个虚拟部件,并分配给每个应用程序。这样,每 个应用程序感觉自己拥有CPU、主存和外部设备。
系统中有两类程序:
管理程序 管理系统资源 控制程序运行 用户程序 使用资源,提出申请 被控制
6
2.3 处理机状态
2. 什么是处理机的态
中央处理机的工作状态,当前它正在执行哪类程序。
3. 处理机态的类别
管态 (Supervisor mode) ——系统态
操作系统管理程序执行时机器所处状态。使用全部指令(包 括一组特权指令);使用全部系统资源(包括整个存储区域)。
24
2.5 UNIX系统结构
2 UNIX核心结构
用户程序 用户级 核心级 文件子系统 高速缓冲 字符设备 块设备 设备驱动程序 硬 件 控 制 硬件层 硬 件
25
程 序 库 系 统 调 用 界 面 进程控制 子系统 进程通信 进程调度 存储管理
第二章 小 结
1. 操作系统虚拟机概念。
2. 处理机的态,管态、用户态,二者的区别。
当硬件完成了中断进入过程后,由相应的中断处理程 序得到控制权,进入了软件的中断处理过程。
进入中断
k+0 k+1
自动进入 程序返回
保留被中断程序的现场 进入相应的中断服务例程 恢复被中断程序的现场
现行程序
退出中断
23
2.5 UNIX系统结构
1 UNIX系统体系结构
UNIX核心层 处理机管理 存储管理 设备管理 文件系统 中断和俘获处理 UNIX实用层 操作系统中能从核心层分离出来,以核外程序形式运行 在用户环境下。 操作系统实用程序—— 编辑程序、调试程序、系统状态 监控、文件管理的实用程序 语言处理程序——C、Fortran、APL等语言及其编译器 软件工具——源代码控制程序SCCS、LEX
用户程序
2
2.1 操作系统虚拟机
2. 操作系统虚拟机的指令系统
操作系统虚拟机的指令系统,又称为操作命令语 言。虚拟机的功能是通过它提供的命令体现的。
操作命令(又称命令接口)
作业控制语言(批处理中的作业说明书等) 键盘命令(分时系统、个人PC)
图形化用户界面(交互方式)
系统功能调用(又称程序接口)
中断进入 中断处 理程序 中断 返回
继续执行
10
2.4 中断机制
2 中断类型
按中断功能分类
输入输出中断:I/O传输结束或出错中断。 外中断:时钟中断、操作员控制台中断、通信中断等。
机器故障中断:电源故障、主存取指令错、长线传输 时的奇偶校验错等。
程序性中断:定点溢出、用户态下用核态指令、越界、 非法操作等。 访管中断:对操作系统提出某种需求时所发出的中断 称为访管中断。
(包括一组特权指令)
使用全部系统资源 (包括整个存储区域)
有的系统还将管理程序执行时的机器状态又进一步分为核态和 管态,管态比核态权要低。
区分处理机的工作状态是通过在计算机状态寄存器中的状态位 (或模式位)来体现的。
8
2.3 处理机状态
4. 特权指令 在核态下,操作系统可以使用所有指令,包括一组特权指令。 这些特权指令执行如下各种功能:
12
2.4 中断机制
按中断来源分类
中断
由处理机外部事件引起的中断称为外中断。包括输入输出中断、 外中断。
俘获
由处理机内部事件引起的中断称为内中断,又称为俘获。包括 访管中断、程序性中断、机器故障中断。
PDP 11系列机中断与俘获的分类
中断与俘获 中断 clock 时钟 rk 磁盘 tty 终端 非法 指令 俘获 地址 越界 俘点 溢出 exit
中断响应过程(以自陷指令为例)
trap 指令执行时有以下四个动作:
Trap指令的俘获地址是034和036号单元。
↓(SP)← PS
↓(SP)← PC PC ←( 34 )
PS ←( 36 )
19
2.4 中断机制
4 向量中断
什么是向量中断 当中断发生时,由中断源自己引导处理机进入中断服务程 序的中断过程称为向量中断。 中断向量就是存储该类型的中断的中断服务例行程序的入 口地址和处理器状态字的存储单元。 中断向量 中断向量包含两个内容,一是某类型中断的中断服务例行 程序的入口地址,另一个是处理器状态字。 中断向量表 系统中(主存中)所有中断类型的中断向量放在一起,形 成了中断向量表。
17
2.4 中断机制
中断响应
什么是中断响应
中断响应是当中央处理机发现已有中断请求时,中止 现行程序执行,并自动引出中断处理程序的过程。
中断响应过程
保留程序断点及处理机有关信息 自动转入相应的中断处理程序执行
中断响应的实质
交换指令地址及处理机的状态信息
18
2.4 中断机制
ห้องสมุดไป่ตู้21
纸带输入
电源时钟 程序时钟 行式打印机 RK磁盘
表2.2 俘获向量地址及俘获向量单元
俘获类型
总线超时 非法指令 断点跟踪指令 IOT指令 电源故障 EMT指令
俘获向量地址
004 006 010 012 014 016 020 022 024 026 030 032 034 036 114 116 240 242 244 246
trap 指令
read
13
fork
2.4 中断机制
3 中断进入
中断响应所需要的硬件包括
正在执行的 用户程序 中断进入 中断处 理程序 中断 返回 继续执行
14
指令计数器 处理机状态寄存器 系统 中断
堆栈
向量表
2.4 中断机制
3 中断进入
保护现场和恢复现场
现场: 是指在中断的那一时刻能确保程序继续运行的有关 信息。主要包括:后继指令所在主存的单元号、程序运行所 处的状态、指令执行情况、以及程序执行的中间结果等 保护现场
11
2.4 中断机制
按中断方式分类
强迫性中断
这类中断事件不是正在运行的程序所期待的,而是由某 种事故或外部请求信号所引起的。
强迫性中断:输入输出中断、外中断、机器故障中断、 程序性中断
自愿中断
它是运行程序所期待的事件,这种事件是由于运行程序 请求操作系统服务而引起的。
自愿中断如:访管中断
⑥响应中断的内容。
16
2.4 中断机制
程序状态字实例
IBM 370 机
程序状态字内容 PSW寄存器
PDP 11系列机
程序状态字内容 PC PS
指令计数器 处理器状态寄存器
C 为进位位, V 为溢出位, Z 为零位, N 为负位, T 为 自陷位。方式为系统状态:00表示核态,11表示用户态。 优先级是指处理器的当前优先级。 为使中断有效, CPU 操 作的优先级必须低于外部设备请求的优先级。
恢复现场
程序重新运行之前,把保留的该程序现场信息从主存中送 至相应的指令计数器、通用寄存器或一些特殊的寄存器中。
15
2.4 中断机制
程序状态字 (psw)
程序状态字是反映程序执行时机器所处的现行状态 的代码。 主要内容包括:
①程序现在应该执行哪条指令; ②当前指令执行情况; ③处理机处于何种工作状态; ④程序在执行时应该屏蔽哪些中断; ⑤寻址方法、编址、保护键;
第二章 操作系统的组织结构
2.1 操作系统虚拟机 2.2 操作系统逻辑结构
2.3 处理机的状态
2.4 中断机制 2.5 UNIX系统结构
2.1 操作系统虚拟机
1. 什么是操作系统虚 拟机
在裸机上配置了操作系 统程序后就构了操作系 统虚拟机。
应用程序 扩充后的机器
裸机
操作系统
操作系统的核心在裸机 上运行,用户程序在扩 充后的机器上运行。
3. 中断概念:定义、类型。
4. 中断响应的定义、实质。
5. 中断处理过程。
6. 向量中断概念。
26
20
表2.1 PDP11系列机中断向量地址及中断向量单元内容
中断类型
终端输入 终端输出 纸带输入
中断向量
060 062 064 066 070 072 074 076 100 102 104 106 200 202 220 222
PC及PS值
终端输入处理程序入口地址 0200 终端输出处理程序入口地 0200 纸带输入处理程序入口地址 0200 纸带输出处理程序入口地址 0200 电源时钟处理程序入口地址 0300 程序时钟处理程序入口地址 0300 行式打印机处理程序入口地址 0200 RK磁盘处理程序入口地址 0240
PC及PS值
trap 340+0 trap 340+1 trap 340+2 trap 340+3 trap 340+4 trap 340+5 trap 340+6 trap 340+7 trap 340+7 trap 340+8
22
TRAP指令
奇偶错 程序中断
浮点错
2.4 中断机制
5 软件的中断处理过程
系统核以外各层具有各种资源管理 功能并为用户提供各种服务。 分层的组织结构在一些操作系统中 只是作为一种指导性原则。 初级中 断处理 资源分配和调度 文件存取 I/O处理 存储管理 进程控制 处理机 进程通信 分配
裸机
5
2.3 处理机的状态
1. 设置处理机状态的目的
为操作系统建立一个保护环境,采用的办法是区 分处理机的工作状态。
改变机器状态的指令 修改特殊寄存器的指令 涉及外部设备的输入/输出指令
在下列情况下,由用户态自动转向管态:
① 用户进程操作系统,要求操作系统的某种服务,这种访问称为系统 功能调用。 ② 在程序执行时,发生一次中断。 ③ 在一个用户进程产生一个错误状态,将被处理为内部中断。 ④ 用户态下执行特权指令,作为特殊类型的错误,按③处理。
从管态返回用户态是用一条指令实现的,这条指令本身也是特 权指令。
9
2.4 中断机制
1 中断概念
所谓中断是指某个事件 (例如电源掉电、定点 正在执行的 用户程序 加法溢出或I/O传输结 束等) 发生时,系统中 止现行程序的运行、引 出处理事件程序对该事 件进行处理,处理完毕 后返回断点,继续执行。
CPU1
软件 分时 硬件 CPU3 主存 主存管理 假脱机打印 打印机
4
CPU2 …
虚拟主存1
虚拟主存2 … 打印机1
打印机2 …
2.2 操作系统逻辑结构
整个操作系统在结构上类似一个洋葱 头,它由若干层组成,每一层都提供 一组功能,这些功能只依赖于该层以 内的各层。 系统核具有初级中断处理、外部设 备驱动、在进程间切换处理机及实 施进程控制和通信功能,提供一种 进程可存在和活动的环境。
用户态(User mode)——目态
用户程序执行时机器所处的状态。在此状态下禁止使用特权 指令,不能直接取用资源与改变机器状态,并且只允许用户 程序访问自己的存储区域。
7
2.3 处理机状态
管态
操作系统的程序执行 使用全部指令
用户态
用户程序执行 禁止使用特权指令 只允许用户程序访 问自己的存储区域。
3
2.1 操作系统虚拟机
操作系统的虚拟技术 CPU调度(分时共享) 现代操作系统的虚拟存储技术(逻辑地址与物理地址的映射) 设备管理中的虚拟设备和虚拟分配技术 虚拟技术的原理: 系统硬件包括CPU、主存和各种外部设备,每台硬部件被操作 系统复制成多个虚拟部件,并分配给每个应用程序。这样,每 个应用程序感觉自己拥有CPU、主存和外部设备。
系统中有两类程序:
管理程序 管理系统资源 控制程序运行 用户程序 使用资源,提出申请 被控制
6
2.3 处理机状态
2. 什么是处理机的态
中央处理机的工作状态,当前它正在执行哪类程序。
3. 处理机态的类别
管态 (Supervisor mode) ——系统态
操作系统管理程序执行时机器所处状态。使用全部指令(包 括一组特权指令);使用全部系统资源(包括整个存储区域)。
24
2.5 UNIX系统结构
2 UNIX核心结构
用户程序 用户级 核心级 文件子系统 高速缓冲 字符设备 块设备 设备驱动程序 硬 件 控 制 硬件层 硬 件
25
程 序 库 系 统 调 用 界 面 进程控制 子系统 进程通信 进程调度 存储管理
第二章 小 结
1. 操作系统虚拟机概念。
2. 处理机的态,管态、用户态,二者的区别。
当硬件完成了中断进入过程后,由相应的中断处理程 序得到控制权,进入了软件的中断处理过程。
进入中断
k+0 k+1
自动进入 程序返回
保留被中断程序的现场 进入相应的中断服务例程 恢复被中断程序的现场
现行程序
退出中断
23
2.5 UNIX系统结构
1 UNIX系统体系结构
UNIX核心层 处理机管理 存储管理 设备管理 文件系统 中断和俘获处理 UNIX实用层 操作系统中能从核心层分离出来,以核外程序形式运行 在用户环境下。 操作系统实用程序—— 编辑程序、调试程序、系统状态 监控、文件管理的实用程序 语言处理程序——C、Fortran、APL等语言及其编译器 软件工具——源代码控制程序SCCS、LEX
用户程序
2
2.1 操作系统虚拟机
2. 操作系统虚拟机的指令系统
操作系统虚拟机的指令系统,又称为操作命令语 言。虚拟机的功能是通过它提供的命令体现的。
操作命令(又称命令接口)
作业控制语言(批处理中的作业说明书等) 键盘命令(分时系统、个人PC)
图形化用户界面(交互方式)
系统功能调用(又称程序接口)
中断进入 中断处 理程序 中断 返回
继续执行
10
2.4 中断机制
2 中断类型
按中断功能分类
输入输出中断:I/O传输结束或出错中断。 外中断:时钟中断、操作员控制台中断、通信中断等。
机器故障中断:电源故障、主存取指令错、长线传输 时的奇偶校验错等。
程序性中断:定点溢出、用户态下用核态指令、越界、 非法操作等。 访管中断:对操作系统提出某种需求时所发出的中断 称为访管中断。
(包括一组特权指令)
使用全部系统资源 (包括整个存储区域)
有的系统还将管理程序执行时的机器状态又进一步分为核态和 管态,管态比核态权要低。
区分处理机的工作状态是通过在计算机状态寄存器中的状态位 (或模式位)来体现的。
8
2.3 处理机状态
4. 特权指令 在核态下,操作系统可以使用所有指令,包括一组特权指令。 这些特权指令执行如下各种功能:
12
2.4 中断机制
按中断来源分类
中断
由处理机外部事件引起的中断称为外中断。包括输入输出中断、 外中断。
俘获
由处理机内部事件引起的中断称为内中断,又称为俘获。包括 访管中断、程序性中断、机器故障中断。
PDP 11系列机中断与俘获的分类
中断与俘获 中断 clock 时钟 rk 磁盘 tty 终端 非法 指令 俘获 地址 越界 俘点 溢出 exit
中断响应过程(以自陷指令为例)
trap 指令执行时有以下四个动作:
Trap指令的俘获地址是034和036号单元。
↓(SP)← PS
↓(SP)← PC PC ←( 34 )
PS ←( 36 )
19
2.4 中断机制
4 向量中断
什么是向量中断 当中断发生时,由中断源自己引导处理机进入中断服务程 序的中断过程称为向量中断。 中断向量就是存储该类型的中断的中断服务例行程序的入 口地址和处理器状态字的存储单元。 中断向量 中断向量包含两个内容,一是某类型中断的中断服务例行 程序的入口地址,另一个是处理器状态字。 中断向量表 系统中(主存中)所有中断类型的中断向量放在一起,形 成了中断向量表。
17
2.4 中断机制
中断响应
什么是中断响应
中断响应是当中央处理机发现已有中断请求时,中止 现行程序执行,并自动引出中断处理程序的过程。
中断响应过程
保留程序断点及处理机有关信息 自动转入相应的中断处理程序执行
中断响应的实质
交换指令地址及处理机的状态信息
18
2.4 中断机制
ห้องสมุดไป่ตู้21
纸带输入
电源时钟 程序时钟 行式打印机 RK磁盘
表2.2 俘获向量地址及俘获向量单元
俘获类型
总线超时 非法指令 断点跟踪指令 IOT指令 电源故障 EMT指令
俘获向量地址
004 006 010 012 014 016 020 022 024 026 030 032 034 036 114 116 240 242 244 246
trap 指令
read
13
fork
2.4 中断机制
3 中断进入
中断响应所需要的硬件包括
正在执行的 用户程序 中断进入 中断处 理程序 中断 返回 继续执行
14
指令计数器 处理机状态寄存器 系统 中断
堆栈
向量表
2.4 中断机制
3 中断进入
保护现场和恢复现场
现场: 是指在中断的那一时刻能确保程序继续运行的有关 信息。主要包括:后继指令所在主存的单元号、程序运行所 处的状态、指令执行情况、以及程序执行的中间结果等 保护现场
11
2.4 中断机制
按中断方式分类
强迫性中断
这类中断事件不是正在运行的程序所期待的,而是由某 种事故或外部请求信号所引起的。
强迫性中断:输入输出中断、外中断、机器故障中断、 程序性中断
自愿中断
它是运行程序所期待的事件,这种事件是由于运行程序 请求操作系统服务而引起的。
自愿中断如:访管中断
⑥响应中断的内容。
16
2.4 中断机制
程序状态字实例
IBM 370 机
程序状态字内容 PSW寄存器
PDP 11系列机
程序状态字内容 PC PS
指令计数器 处理器状态寄存器
C 为进位位, V 为溢出位, Z 为零位, N 为负位, T 为 自陷位。方式为系统状态:00表示核态,11表示用户态。 优先级是指处理器的当前优先级。 为使中断有效, CPU 操 作的优先级必须低于外部设备请求的优先级。