运行中断处理程序是否会创建一个新进程,或者它是现有进程的一部分



从https://en.wikipedia.org/wiki/Interrupt,有三种不同类型的中断:

  • 硬件中断,

  • 由处理器本身的异常情况(通常称为陷阱或异常)引起的软件中断

  • 由执行指令集中的一条特殊指令引起的一种软件中断。(例如系统调用)

我的问题是当cpu切换到运行中断处理程序时,

  1. 是否创建了一个新进程来运行中断处理程序?

  2. 或者中断处理程序的运行是现有进程的一部分,例如

    • 在第一种中断中从硬件设备请求某种服务然后等待指示设备操作完成的硬件中断的过程
    • 在第二种中断中引起异常的过程
    • 在第三种中断中进行系统调用的过程

是否创建了一个新进程来运行中断处理程序?

正在运行的进程在内核模式下处理中断。

你的三类中断将不同但相关的概念合并为一个术语"中断"。

故障和陷阱是异常,而不是中断。它们通常以与中断相同的方式处理,但它们与指令流同步发生(中断是异步的),并且(与中断不同)它们不能被阻止。

通常,系统调用是FAULT。

相关内容

最新更新