Transcript Chapter 2
第二章
(一)
(二)
(三)
(四)
操作系统的逻辑结
构
操作系统虚拟机
操作系统逻辑结构
处理机的状态
中断技术
(一)操作系统虚拟机
为提高计算机系统资源的使用效率和方便
用户,在计算机系统中必须配备操作系统.
操作系统是一个大型的软件,规模庞大、
结构复杂。操作系统必须是一个清晰、正
确的逻辑结构。
什么是操作系统虚拟机
在裸机上配置了操作系统程序后就构成了操
作系统虚拟机。
操作系统的核心在裸机上运行
用户程序在扩充后的机器上运行
应用程序
扩充后的机器
裸机
操作系统
用户程序
操作系统虚拟机的指令系统
裸机的指令系统是什么?
机器指令
操作系统虚拟机的指令系统?
操作系统虚拟机的指令系统,又称为操作命令
语言。虚拟机的功能是通过它提供的命令体现
的。
(1)操作命令(又称命令接口)
作业控制语言、键盘命令、图形化用户界面
(2)系统功能调用(又称程序接口)
(二)
操作系统逻辑结构
UNIX系统体系结构
Unix系统组成:
硬件(裸机)
核心层
实用层
其他应用程序
CC、Shell、用户程序
核外程序
sh who a.out date wc grep
cd vi ld comp cpp
UNIX核心
裸机
nroff
UNIX系统核心结构
1. 进程控制子系统
进程同步、进程间
通信、进程调度和
存储管理
2.文件子系统
文件存储空间管理、
文件操作及存取控
制、高速缓冲机制
Windows操作系统的结构
(三)
处理机的状态
1. 设置处理机状态的目的
为操作系统建立一个保护环境,采用的方法是区分处
理机的工作状态。
系统中有两类程序:
管理程序
用户程序
管理系统资源
使用资源、提出申请
控制程序运行
被控制
2. 什么是处理机的态
中央处理机的工作状态,当前它正在执行哪类程序,
决定处理机的态。
3. 处理机态的类别
(1)核态(Kernel mode)
操作系统的管理程序执行时机器所处的状态。
使用全部指令(包括一组特权指令)
使用全部系统资源(包括整个存储区域)
(2)管态(Supervisor mode)
管态比核态的权限低,在此状态下允许使用一
些用户态下不能使用的资源,但不能使用修改
CPU状态的指令。
无核态时,管态执行核态的全部功能。
(3)用户态(User mode)
用户程序执行时机器所处的状态。在此状态下禁止使
用特权指令,不能直接取用资源与改机器状态,并且只允
许用户程序访问自己的存储区域。
管态
用户态
操作系统的程序执行
使用全部指令
(包括一组特权指令)
使用全部系统资源
(包括整个存储区域)
处理机的状态不断变化,
它有时会处于用户态,
有时会处于管态。
用户程序执行
禁止使用特权指令
只允许用户程序访问
自己的存储区域
中断
自陷
中断
嵌套
核态
用户态
中断自陷
返回
UNIX系统处理机状态转换
4. 特权指令集
在核态下操作系统可以使用所有指令,包括一
组特权指令。
改变机器状态的指令
修改特殊寄存器的指令
涉及外部设备的输入/输出指令
允许和禁止中断;
在进程之间切换处理机;
存取用于内存保护的寄存器;
执行输入和输出操作;
停止一个中央处理机的工作。
实例操作系统如何区分处理机的状态
DOS系统 不分态
Windows系统
现分为两态——用户态、系统态
Unix(Linux)系统
分为三态:核态、管态、用户态
由用户态转向核态
如何实现?
用户程序请求操作系统的服务
发生中断
用户程序中产生了一个错误的状态
在用户程序中执行一条特权指令
从核态转回用户态用一条指令实现,中断返回指令。
必要的硬件支持
存储器
主存储器(主存、内存):
处理机能直接访问的存储器称为主存储器,用来存放正在或
将要执行的系统和用户程序和数据以及程序执行时要求的临
时存储空间。
只读存储器ROM(Read-only memory): ROM称为BIOS,
用来存放基本的I/O程序。
随机访问存储器 RAM(random access memory)
辅存储器(辅存、外存):
处理机不能直接访问的存储器,如磁盘、磁带、光盘等,用
来存放大量的数据信息。
时钟
时钟是操作系统运行时必不可少的硬设施,它以固
定的时间间隔产生中断信号,这对于实施进程调度、
计算系统资源的消耗、实时控制等功能是必不可少
的。
在操作系统中需时钟支持的工作有:
处理机调度;
实时控制;
提供用户和系统所需的绝对时间(日历时钟、墙钟)。
(四) 中断技术
一. 中断概念
所谓中断是指某个事
件(例如键盘输入、
定点加法溢出或I/O传
输结束等)发生时,
系统中止现行程序的
运行、引出处理事件
程序对该事件进行处
理,处理完毕后返回
断点,继续执行。
中断源:引起中断的事件称中断源,如打印完成
中断,其中断源是打印机。
断点:发生中断时正在运行的程序被暂时停止,
程序的暂停点称为断点。
中断响应:是处理机发现有中断请求时,中止
现运行程序的执行并自动引出中断处理程序的过
程。
中断由软硬件协同处理
中断装置:指发现中断,响应中断的硬件
中断处理程序:对中断事件进行处理的程序,由软
件来完成
二. 中断类型
按中断功能分类
(1)输入输出中断:
外部设备或通道操作正常结束或错误时所发生的中断。
如I/O传输结束或出错中断。
(2)外中断:
外部非通道式装置所引起的中断。
时钟中断、操作员控制台中断、通信中断等。
(3)机器故障中断:
机器发生故障时的中断。
电源故障、主存取指令错、长线传输的奇偶校验错等。
(4)程序性中断:
程序性质的错误或某些特定状态而产生的中断。
浮点溢出、用户态下用核态指令、越界、非法操作等。
(5)访管中断:
对操作系统提出某种需求时发出的中断称为访管中断。
中断的分类:
外部中断和内部中断
来自处理机外部的事件,称为外部中断,如I/O中断、外
中断。
来自处理机的中断,称为内部中断,如硬件故障中断、
程序性中断、访管中断。这类中断有时称俘获(也有称
陷入、陷阱、自陷、捕俘等,它的英文名称为 trap,来
自早期的UNIX系统)
强迫性中断 和 自愿性中断
不是正在运行的程序所期待的,而是由某种事故或外
部请求信号所引起的
运行程序所期待的事件,由于执行访管指令而引起的
三. 中断进入
对中断请求的整个
处理过程称为中断处
理,它是由软、硬件
结合形成的一套中断
机构实施的。
1. 保护现场和恢复现场
(1)现场
是指在中断的那一时刻能确保程序继续运行的
有关信息。
主要包括——
后继指令所在主存的单元号
程序运行所处的状态
指令执行情况
以及程序执行的中间结果等
(2)保护现场
当中断发生时,必须立即把现场信息保存在主
存中,这一工作称之为保护现场。
(3)恢复现场
程序重新运行之前,把保留的该程序现场信息
从主存中送至相应的指令计数器、通用寄存器
或一些特殊的寄存器中。完成这些工作称为恢
复现场。
2. 程序状态字(psw)
(1)什么是程序状态字
程序状态字是反映程序执行时机器所处的现行
状态的代码。
主要内容包括——
程序现在应该执行哪条指令
当前指令执行情况
机器处于何种程序状态
程序在执行时应该屏蔽哪些中断
寻址方法、编址、保护键
响应中断的内容
(2)程序状态字的例子
IBM370机
IBM PC机
程序状态字内容 PSW寄存器
程序状态字内容 CS IP 指令地址
flag 标志寄存器
PDP 11系列机
程序状态字内容 PC
PS
指令计数器
处理器状态寄存器
3. 什么是中断响应
(1)什么是中断响应
(1)什么是中断响应
中断响应是当中央处理机发现已有中断
请求时,中止现行程序执行,并自动引出
中断处理程序的过程。
中断响应过程:
保留程序断点及处理机有关信息
自动转入相应的中断处理程序
(2)中断响应的实质
交换指令地址及处理机的状态信息
(3)中断响应过程(硬件完成)
中断处理程序的PC
3
中断处理程序的PS
PC
4
PS
内 存
2
1
PC进栈
PS进栈
栈顶
指针
堆 栈
四. 软件的中断处理过程
当硬件完成了中断进入后,转到中断处理程
序,进入软件中断处理过程。这个过程主要有
如下三项工作:
(1)保护现场和传递参数;
(2)执行相应的中断(或自陷)处理程序;
(3)恢复和退出。
注: 在中断进入时由硬件保护了被中断程序的PC和PS,
在中断处理中保护各寄存器的值和其它状态信息。
中断处理(软件完成)
自动转入(硬件)
程序
•••••
保存被中断程序现场
进行相应的中断处理
mov r2,0900
trap 09
恢复被中断程序现场
Jmp ert
••••••
中断返回(执行硬件指令)
两种中断机构
1.向量中断机构
2.探询中断机构
中断线
CPU
磁
盘
打印机
CPU
磁带
打印机
键盘
中断线
键盘
磁
盘
磁带
五. 向量中断
1. 什么是向量中断
当中断发生时,由中断源自己引导处理机进入中
断服务程序的中断过程称为向量中断。
2. 中断向量
中断向量是存储某类型中断的中断服务例行程序
的入口地址和处理机状态字的存储单元。
3. 中断向量表
主存中用于存放中断向量服务地址的一组存储单元组成
的表。
六.中断返回
中断返回是指执
行一条中断返回
指令(RTI)。
硬件操作
↑(SP) → PC
↑(SP) → PS
第二章
小
结
1. 操作系统虚拟机概念。
2. 处理机的态,(核态)、管态、用户
态,相互的区别。
3. 中断概念:定义、类型。
4. 中断响应的定义、实质。
5. 中断处理的过程。
6. 向量中断的概念。