首页 > 解决方案 > 操作系统上下文中的中断驱动与事件驱动

问题描述

我在一篇文章中看到操作系统是中断驱动的。操作系统是中断驱动还是事件驱动?

谢谢你。

标签: eventsoperating-systeminterrupt

解决方案


操作系统的核心是中断驱动的。话虽如此,操作系统仍然可以利用事件。

试着这样想……想象一个有多种线程的系统,但此时无事可做——也就是说,它处于空闲状态,没有线程准备好运行。由于系统中没有线程在运行,因此系统将保持不变,直到发生某种外部动作。这种外部动作将采用中断的形式。此中断可能来自定时器、串行端口、键盘、鼠标、磁盘驱动器、网络设备……。无论来源如何,都需要处理此中断,并且它有可能导致许多线程准备就绪,并且从而执行。

事件是一种软件构造。一些执行上下文可以等待事件;有些可以发出事件信号;有些人可以两者兼得。在一个复杂的系统中,您可能有各种线程等待和发送事件信号。然而,在其核心,操作系统仍然需要响应中断,只有中断才能让它脱离空闲状态。


推荐阅读