中斷處理層的主要任務是:切換進程上下文,測試中斷信號源,讀取設備狀態,修改進程狀態。因為中斷處理與硬件密切相關,所以對於用戶和用戶程序要盡量屏蔽,所以要放在操作系統的底層進行中斷處理,系統的其余部分要盡量少與之連接。
當壹個進程請求I/O操作時,該進程將被掛起,直到I/O設備完成I/O操作,設備控制器將向CPU發送中斷請求,CPU將做出響應並轉向中斷處理程序,中斷處理程序將執行相應的處理,並在處理完畢後釋放相應進程的阻塞狀態。
中斷請求值
中斷請求(IRQ)的價值在於,計算機中有壹個特殊的設備,當該設備發送有關其操作的信號時,可以在指定的位置中斷它。比如打印機完成打印任務時,向計算機發出中斷信號,計算機立即中斷,以便判斷下壹個進程。
如果多個信號也發送到計算機請求中斷,計算機可能無法理解,因此每個設備必須設置壹個唯壹的值及其到計算機的路徑。在即插即用(PnP)設備出現之前,當向計算機添加新設備時,用戶通常需要手動設置IRQ值(或實現它)。?
參考以上內容:百度百科-執行中斷,百度百科-中斷請求。