6操作系统的中断和异常
2019-06-11 13:41
465 查看
版权声明:Copyright:@@个人所有 https://blog.csdn.net/y20_20/article/details/91429793
操作系统中断和异常
目录
一、中断机制的诞生
二、中断的概念和作用
三、中断的分类
四、外中断的处理过程
一、中断机制的诞生
1、中断引入
-
早期计算机执行程序都是单道串行方式执行(一道程序完成再调入下一道程序),I/O等待时间较长导致资源利用率极低,因此操作系统诞生
-
操作系统作为计算机系统资源的管理者,引入中断机制,实现多道程序并发之心,大大提高了效率
2、中断的本质: 发生中断就意味着需要操作系统介入,开展管理工作
- CPU接收到记时部件(时间片)发出的中断信号,切换到核心态下对中断进行处理
- 发出系统调用(内中断信号)请求输入输出,CPU切换为核心态对中断进行处理
二、中断的概念和作用
1、中断:
- 当中断发生时,CPU立即进入核心态
- 当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理
- 对于不同的中断信号,会进行不同的处理
2、概念和作用
- 因为一旦发生中断,就需要操作系统介入开展管理工作
- 操作系统开展管理工作(进程切换,I/O设备 的请求和释放等)需要 特权指令,运行在核心态
- 中断可以 让CPU从用户态切换为核心态,使操作系统获得计算机的控制权
- 有了中断,才能实现多道程序并发
3、用户态和核心态之间切换的实现
- 用户态到核心态是通过中断实现的,并且中断时唯一途径
- 核心态到用户态是通过执行一个特权指令,将状态字寄存器PSW的标识位设置为用户态
三、中断的分类
1、内中断(异常、例外、陷入): 信号来源:CPU内部,与当前执行的指令有关
- 自愿中断:指令中断(系统调用的trap指令)
- 强迫中断:硬件故障(缺页)、软件中断(整数除0)
2、外中断(中断): 信号了来源:CPU外部,与当前执行的命令无关
- 外设请求:I/O操作完成发出的中断信号
- 人工干预:用户 强行终止一个进程
四、外中断的处理过程
1、过程:
- 步骤一:执行完每条指令后,CPU要检测当前是否存在中断信号
- 步骤二:如果检测到中断信号,则需要保护被暂停进程的CPU环境(如PSW、PC和各种通用寄存器)
- 步骤三:根据中断信号类型转入相应的中断处理
- 恢复原进程的CPU环境并退出中断,返回原进程并继续往下执行
2、总体知识图:
相关文章推荐
- 【Linux操作系统分析】中断和异常(1)——中断描述符表IDT,I/O中断处理,中断向量
- 操作系统中断和异常
- 一个操作系统的实现(10)-中断和异常的补充说明
- 操作系统实践之第二章(中断和异常)
- 操作系统的中断与异常(陷阱)
- Linux操作系统基础知识之五:中断和异常
- 操作系统的中断、异常和系统调用
- 《一个操作系统的实现》(三):4.中断和异常&5.保护模式下的I/O
- 操作系统——中断、异常和系统调用比较
- 操作系统的中断,陷阱,异常
- 操作系统学习笔记(2)——中断和异常
- 2.操作系统的启动、中断、异常和系统调用
- 操作系统from清华大学向勇,陈渝 笔记(二)操作系统的启动、中断、异常、系统调用
- 操作系统—陷阱、中断、异常
- 操作系统学习2启动、中断、异常、系统调用
- 一个操作系统的实现(9)-中断和异常
- 操作系统 中断异常系统调用
- 浅谈操作系统中断和异常
- 操作系统学习笔记——保护模式——中断和异常(1)
- 操作系统的学习(1)——启动,中断,异常和系统调用。