操作系统--软中断

1.中断

在计算机中,中断是系统用来响应硬件设备请求的一种机制,操作系统收到硬件的中断请求,会打断正在执行的进程,然后调用内核中的中断处理程序来响应请求。

中断处理程序要短且快,这样才能减少对正常进程运行调度地影响。

2.软中断

Linux 系统为了解决中断处理程序执行过长和中断丢失的问题,将中断过程分成了两个阶段,分别是「上半部和下半部分」

  • 上半部(硬中断)由硬件触发中断,用来快速处理中断。会打断 CPU 正在执行的任务,然后立即执行中断处理程序;
  • 下半部(软中断):由内核触发中断,用来异步处理上半部未完成的工作。一般以「内核线程」的方式运行,并且每一个 CPU 都对应一个软中断内核线程。

不过,软中断不只是包括硬件设备中断处理程序的下半部,一些内核自定义事件也属于软中断,比如内核调度等、RCU 锁(内核里常用的一种锁)等。


3.参考

小林 coding

你可能感兴趣的:(操作系统学习记录,linux)