可屏蔽中斷
可屏蔽中斷
中斷(interrupt)通常被定義為一個事件,該事件改變處理器執行的順序。例如:計算機接收到中斷信號之後,進行相應的判斷,停止當前執行的程序1,並保留程序1的當前信息,然後去執行引起中斷的中斷處理程序2,完成後恢復程序的執行信息,繼續執行程序1。中斷分為非屏蔽中斷和可屏蔽中斷。
非屏蔽中斷是出現在NMI線上的請求,不受中斷標誌位IF的影響,在當前指令執行完以後,CPU就響應。這種中斷通常用於電源故障。非屏蔽中斷的優先權高於屏蔽中斷。
簡述:保存斷點入棧,響應經中斷控制器8259優先順序判斷後的中斷請求,恢復斷點。
• 介面發出中斷請求
• 當前指令執行完后,CPU響應中斷
• 中斷類型號 N送CPU
• 當前的EFR CS HE EIP 推入棧
• 清除 IF(中斷允許標誌位,IF=0,禁止CPU響應外部中斷請求,IF=1,允許響應) 和TF(跟蹤標誌,也稱單步執行,CPU按跟蹤方式執行)
• 由中斷類型號,查中斷向量表獲得中斷服務子程序的入口地址
• CPU執行中斷子程序
• 開中斷
• IRET指令使EIP CS HE EFR彈出棧,返回被中斷的源程序