一台计算机只能使用软件中断吗?

时间:2019-02-08 19:38:16

标签: hardware interrupt

软件中断可以执行某些硬件中断吗? 它可以检测到电源故障和事物,然后仅依靠软件中断吗? 这样我们就不需要像中断控制器这样的特殊硬件

1 个答案:

答案 0 :(得分:0)

尽管这在技术上是可行的,但我怀疑您最终会获得一个稳定甚至可靠的系统。中断作为硬件特别重要,因为它们很好地异步中断了其他任务的处理。这样一来,最低级别的物理组件就可以快速正确地响应事件。

让我们播放您提到的情况,并想象一下主板上的某个组件检测到电源故障。没有中断,最好的办法就是写入寄存器或高速缓存。然后,它必须依赖于另一硬件或什至操作系统来检查该值。这基本上意味着定期轮询,效率不高。此外,如果当前正在运行一个大型指令集,可能正在浪费检查该值所需的资源,那么您将无法确定性地知道何时进行该检查。它可能是即时的,或者可能是现在的一秒钟。如果是后者,则计算机会掉电并关闭电源,然后才能做出反应。