操作系统的中断机制

436 阅读1分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

现代操作系统是靠中断驱动的软件。中断是操作系统必须提供的功能,引入中断的初衷是提高多道程序运行环境中CPU的利用率。中断机制中,只有一小部分功能属于内核,他们负责保护和恢复中断现场的信息,转移控制权到相关的处理程序。这样可以减少中断的处理时间,提高系统的并行能力。

CPU从用户态切换为核心态的唯一方式就是通过中断和异常,发生中断和异常时,运行用户态的CPU会立即进入核心态,这是通过硬件实现的。

  • 用户态到核心态的转换发生在中断产生时,而核心态到用户态转换则发生在中断返回用户程序时。
  • 用户态转换为核心态的唯一途径是中断或异常

中断与异常

  • 中断:也称外中断,指来自CPU执行指令以外的事件的发生。这一类中断通常是于当前指令执行无关的事件,即他们与当前处理机运行的程序无关。
  • 异常:也称内中断、例外或陷入(Trap),指源自CPU执行指令内部的事件,对异常的处理一般要依赖于当前程序的运行现场,而且异常不能被屏蔽,一旦出现应立即处理。

image.png