操作系统笔记一:中断、异常和陷入机制

  中断/异常/陷入机制是操作系统由用户态转为内核态的唯一途径,是操作系统的驱动力。

  中断、异常机制有以下特征:

  1. 随机发生
  2. 自动处理(硬件完成)
  3. 可恢复

  中断、异常的区别:

  • 中断属外部事件,是正在运行的程序所不期望的
  • 异常由正在执行的指令引发

  在中断、异常过程中,软件和硬件分别担任什么角色:

  • 硬件--中断/异常响应
  • 软件--中断/异常处理程序

  中断/异常的引入目的:

  • 中断的引入是为了CPU与设备之间的并行操作
  • 异常的引入是为了表示CPU执行指令时本身出现的问题

  一个故事:小明在看书,突然来了个电话,接完电话继续看书,这是中断;小明在看书,感觉口渴了,喝了水接着看书,这是异常。

  类别 原因 同步/异步 返回行为
中断 中断(interrupt) 来自I/O设备或其他硬件部件 异步 总是返回到下一条指令
异常

陷入(trap)

有意识安排的 同步 返回到下一条指令
故障(fault) 可恢复的错误 同步 返回到当前指令
终止(abort) 不可恢复的错误 同步 不会返回

  故障与陷入:

  • 缺页异常(page fault),由于是fault,所以当缺页异常处理完成之后,还会去尝试重新执行那条触发异常的指令(那时多半情况是不再缺页)
  • 断点处理,用于调试中,遇到断点会停下来等待你的处理,等到你让其重新执行了,就直接执行下一条指令

  完、

原文地址:https://www.cnblogs.com/zhangyunhao/p/4409410.html