什么是中斷處理程序

【什么是中斷處理程序】在響應一個特定中斷的時候,內核會執行一個函數,該函數叫做中斷處理程序或中斷服務例程 。產生中斷的每一個設備都有一個相應的中斷處理程序 。一個設備的中斷程序是它設備驅動程序的一部分,設備驅動程序是用于對設備進行管理的內核代碼 。在Linux中,中斷處理程序看起來是普普通通的C函數 。這些函數必須按照特定的類型聲明,以便內核能夠以標準的方式傳遞處理程序的信息 。中斷處理程序與其它內核函數的真正區別在于:中斷處理程序被內核調用來響應中斷,它們運行于中斷上下文的特殊上下文中 。上半部與下半部的對比:通常把中斷處理切為兩個部分或兩半 。中斷處理程序是上半部接收到一個中斷,立即開始執行,但只做有嚴格時限的工作,這些工作都是在所有中斷被禁止的情況下完成 。能夠被允許稍后完成的工作會推遲到下半部 。在合適的時機,下半部會被開中斷執行 。