您的位置:首页 > 其它

6操作系统的中断和异常

2019-06-11 13:41 465 查看
版权声明:Copyright:@@个人所有 https://blog.csdn.net/y20_20/article/details/91429793

操作系统中断和异常

目录

一、中断机制的诞生
二、中断的概念和作用
三、中断的分类
四、外中断的处理过程

一、中断机制的诞生

1、中断引入

  • 早期计算机执行程序都是单道串行方式执行(一道程序完成再调入下一道程序),I/O等待时间较长导致资源利用率极低,因此操作系统诞生

  • 操作系统作为计算机系统资源的管理者,引入中断机制,实现多道程序并发之心,大大提高了效率

2、中断的本质: 发生中断就意味着需要操作系统介入,开展管理工作

  • CPU接收到记时部件(时间片)发出的中断信号,切换到核心态下对中断进行处理
  • 发出系统调用(内中断信号)请求输入输出,CPU切换为核心态对中断进行处理

二、中断的概念和作用

1、中断:

  1. 当中断发生时,CPU立即进入核心态
  2. 当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理
  3. 对于不同的中断信号,会进行不同的处理

2、概念和作用

  • 因为一旦发生中断,就需要操作系统介入开展管理工作
  • 操作系统开展管理工作(进程切换,I/O设备 的请求和释放等)需要 特权指令,运行在核心态
  • 中断可以 让CPU从用户态切换为核心态,使操作系统获得计算机的控制权
  • 有了中断,才能实现多道程序并发

3、用户态和核心态之间切换的实现

  • 用户态到核心态是通过中断实现的,并且中断时唯一途径
  • 核心态到用户态是通过执行一个特权指令,将状态字寄存器PSW的标识位设置为用户态

三、中断的分类

1、内中断(异常、例外、陷入): 信号来源:CPU内部,与当前执行的指令有关

  1. 自愿中断:指令中断(系统调用的trap指令)
  2. 强迫中断:硬件故障(缺页)、软件中断(整数除0)

2、外中断(中断): 信号了来源:CPU外部,与当前执行的命令无关

  1. 外设请求:I/O操作完成发出的中断信号
  2. 人工干预:用户 强行终止一个进程

四、外中断的处理过程

1、过程:

  • 步骤一:执行完每条指令后,CPU要检测当前是否存在中断信号
  • 步骤二:如果检测到中断信号,则需要保护被暂停进程的CPU环境(如PSW、PC和各种通用寄存器)
  • 步骤三:根据中断信号类型转入相应的中断处理
  • 恢复原进程的CPU环境并退出中断,返回原进程并继续往下执行

2、总体知识图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: