多重中断的处理及其中断源屏蔽字
一。多重中斷也叫中斷嵌套(套娃)
1、多重中斷的定義
如果CPU在執行某一中斷服務程序過程中,又遇到了新的更高級的中斷請求,CPU暫停原中斷的處理,而轉去處理新的中斷,待處理完畢后,再返回繼續處理原來的中斷,這種中斷稱為多重中斷,也稱中斷嵌套。
2、多重中斷的處理原則
若新的中斷的優先級高于原中斷的優先級,CPU響應新的中斷;否則,CPU不予響應,必須待原中斷處理完畢且返回主程序后,再響應新的中斷。(這個地方其實可以參考一下計算機操作系統里面對動態的優先級算法)
3、單重中斷和多重中斷比較
在中斷響應部分(中斷隱指令),兩者基本沒用區別
在中斷服務階段,多重中斷需要在有新的中斷請求時,比較優先級,如果請求者優先級低于正在執行者,則繼續執行中斷。如果高于,則需要中斷當前的中斷,這里需要保護現場的同時,需要保存屏蔽字
二。中斷屏蔽字
1. 中斷屏蔽技術
中斷屏蔽技術主要用于多重中斷,CPU要具備多重中斷的功能,須滿足下列條件
每個中斷源都有一個屏蔽觸發器,1表示屏蔽該中斷源的請求,0表示可以正常申請,所有屏蔽觸發器組合在一起,便構成一個屏蔽字寄存器,屏蔽字寄存器的內容稱為屏蔽字。
2. 屏蔽字設置的規律
3. 多重中斷中,中斷的屏蔽字(舉例)
假設有A,B,C,D四個中斷源,其硬件排隊優先次序位D>A>C>B
三。動態的引入中斷源(中斷的執行順序)
1.例題
繼續前面的例子,假設每個中斷的中斷服務時間需求均是20nsB在5ns時提出請求D在10ns時提出請求A在35ns時提出請求C在60ns時提出請求時間軸圖如下:
2.說明
執行的順序過程,類似于操作系統里面的動態的優先級調度算法。
若當前沒用程序中斷請求時,先到的(當且僅當只有一個同時到達)直接進行中斷服務。
根據中斷源的優先級來執行,若當前的中斷程序優先級低于等待隊列中(或剛進入)的中斷程序,則當前中斷程序進行中斷,讓出資源給優先級更高的中斷程序。
總結
以上是生活随笔為你收集整理的多重中断的处理及其中断源屏蔽字的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 单元测试实施方案
- 下一篇: 医院计算机软件是否是固定资产,加强固定资