溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

計算機程序中斷處理過程的五個階段是什么

發布時間:2021-04-15 09:29:40 來源:億速云 閱讀:1432 作者:小新 欄目:互聯網科技

小編給大家分享一下計算機程序中斷處理過程的五個階段是什么,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

中斷處理過程的五個階段:1、中斷請求階段;2、中斷判優階段,有硬件判優和軟件判優兩種方法;3、中斷響應階段,CPU向中斷源發出中斷響應信號;4、中斷服務階段;5、中斷返回階段,返回到原程序的斷點處,恢復硬件現場,繼續執行原程序。

本教程操作環境:windows7系統、Dell G3電腦。

中斷處理的基本過程包括中斷請求、中斷判優、中斷響應、中斷服務 和中斷返回等五個階段。

1.中斷請求階段


1)發生在CPU內部的中斷(內部中斷),不需要中斷請求,CPU內部的中斷控制邏輯直接接收處理。

2)外部中斷請求由中斷源提出。外部中斷源利用CPU的中斷輸入引腳 輸入中斷請求信號。一般CPU設有兩個中斷請求輸入引腳:可屏蔽中斷請求輸入引腳和不可屏蔽中斷請求輸入引腳。

1.1中斷請求觸發器

每個中斷源發中斷請求信號的時間是不確定的,而CPU在何時響應中斷也 是不確定的。所以,每個中斷源都有一個中斷請求觸發器,鎖存自己的中斷請求信號,并保持到CPU響應這個中斷請求之后才將其清除。

1.2中斷允許觸發器

在CPU內部有一個中斷允許觸發器,當其為“1”時,允許CPU響應中斷, 稱為開中斷。若其為“0”,不允許CPU響應中斷,中斷被屏蔽,稱為關中斷。

%%通常,當CPU復位時,中斷允許觸發器也復位為“0”,即關中斷。當 CPU中斷響應時,CPU自動關閉中斷,禁止接受另一個新的中斷。
%%中斷允許觸發器的狀態可以用開中斷或關中斷指令來設置。

2.中斷判優階段


CPU一次只能接受一個中斷源的請求,當多個中斷源同時向CPU提出中斷請求時,CPU必須找出中斷優先級最高的中斷源,這一過程稱為中斷判優。

中斷判優可以采用硬件方法,也可采用軟件方法。

2.1軟件判優

CPU檢測到中斷請求后,首先讀取中斷請求寄存器的內容,逐位檢測它們的狀態,檢測到某一位為1,就確定對應的中斷源有中斷請求,轉去執行它的中斷服務程序。

先檢測哪一個,哪一個的優先級就高,后檢測哪一個,哪一個優先級就低,檢測的順序就是各中斷源的優先級順序。

計算機程序中斷處理過程的五個階段是什么
假設上圖中輸入端口地址為87FFH。有如下查詢程序:

MOV DX, 87FFH
IN AL, DX ;讀中斷請求寄存器內容
SHR AL, 1
JC IR0 ;IRQ0有請求,轉IR0
SHR AL,1
JC IR1 ;IRQ1有請求,轉IR1
SHR AL,1
JC IR2 ;IRQ2有請求,轉IR2
… …
軟件判優耗時較長。如果中斷源很多,中斷的實時性就很差,但是軟件判優優先權安排靈活。

2.2硬件判優

利用專門的硬件電路確定中斷源的優先級,有兩種常見的方式:菊花鏈判優電路和中斷控制器判優。

2.2.1菊花鏈判優電路

設計思想:每個中斷源都有一個中斷邏輯電路,所有的中斷邏輯電路形成一個鏈,猶如菊花鏈。排在鏈前端的中斷源優先級最高,越靠后的設備優先級越低。
計算機程序中斷處理過程的五個階段是什么
實現過程: CPU收到中斷請求,如果允許中斷,CPU發出中斷響應信號。中斷響應信號首先到達菊花鏈的前端,如果中斷源1提出了中斷請求,它就會截獲中斷響應信號,封鎖它,使它不能向下一個中斷源傳送。不論下面的中斷源有沒有提出中斷請求,都不可能接收到中斷響應信號,因此它們的中斷請求也不能被響應。

2.2.2中斷控制器判優

中斷控制器,如Intel8259A,可以以多種方式設置中斷源的中斷優先級。 中斷控制器中有一個中斷優先級判別器,它自動判別出目前提出中斷請求的優先級最高的中斷源,并將它的中斷向量碼送到數據總線,CPU接收中斷向量碼并據此找到它的中斷服務程序。

計算機程序中斷處理過程的五個階段是什么

3.中斷響應階段


經過中斷判優,中斷處理就進入中斷響應階段。中斷響應時,CPU向中斷源發出中斷響應信號,同時:

① 保護硬件現場;

② 關中斷;

③ 保護斷點;

④ 獲得中斷服務程序的入口地址。

4.中斷服務階段


中斷服務程序的一般結構為:

1)保護現場。 在中斷服務程序的起始部分安排若干條入棧指令,將各寄存器的內容壓入堆棧保存。

2)開中斷。 在中斷服務程序執行期間允許級別更高的中斷請求中斷現 行的中斷服務程序,實現中斷嵌套。

3)中斷服務。 完成中斷源的具體要求。

4)恢復現場。 中斷服務程序結束前,必須恢復主程序的中斷現場。通常是將保存在堆棧中的現場信息彈出到原來的寄存器中。

5)中斷返回。 返回到原程序的斷點處,繼續執行原程序。

5.中斷返回階段


返回到原程序的斷點處,恢復硬件現場,繼續執行原程序。

中斷返回操作是中斷響應操作的逆過程。

看完了這篇文章,相信你對“計算機程序中斷處理過程的五個階段是什么”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女