中斷處理的全過程


中斷處理的全過程分為中斷檢測中斷響應中斷處理3個階段。

1.中斷檢測

中斷檢測在每條指令結束時進行,檢測是否有中斷請求或是滿足異常條件。

 

2.中斷響應

中斷響應是由處理器內部硬件完成的中斷序列,而不是由程序執行的。在Intel 80x86中,中斷響應過程的操作如下:

●對可屏蔽中斷,從8259中斷控制器芯片讀取中斷向量號;

將標志寄存器EFLAG,CS和IP壓棧

●對於硬件中斷,復位標志寄存器中的IF和TF位,禁止可屏蔽外部中斷和單步異常;

根據中斷向量號,查找中斷向量表,根據中斷服務程序的首址轉移到中斷服務程序執行

 

3.中斷處理即執行中斷服務程序。中斷服務程序的主要內容如下:

保存中斷服務程序將要使用的所有寄存器的內容,以便於在退出中斷服務程序之前進行恢復;

●如果中斷向量被多個設備所共享,為了確定產生該中斷信號的設備,需要輪詢這些設備的中斷狀態寄存器;

●獲取中斷相關的其他信息;

對中斷進行具體的處理

恢復保存的上下文

●執行中斷返回指令,使CPU的控制返回到被中斷的程序繼續執行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM