不同的外部設(shè)備、不同的體系結(jié)構(gòu)、不同的OS其中斷實現(xiàn)機制都有差別。
中斷存在的意義是CPU控制外部設(shè)備的同時,外部設(shè)備也可以高效的“控制CPU”。這種設(shè)計思想擴展到了外部硬件控制CPU、軟件控制CPU、CPU運行管理等三個方面。因此,使用events事件表示,更加貼切實際,但在平時描述中,基本上仍然采用了中斷這個詞。
events的分類如下圖所示,主要包括中斷和異常,外部硬件控制CPU對應(yīng)hardware interupt,軟件控制CPU對應(yīng)software interrupt,CPU運行管理則對應(yīng)exception。(所以腦子里還是要豐富這個認(rèn)識)
(你整得戳得代碼就容易產(chǎn)生異常,你如果對這個沒有映像,說明友友你是個軟件小能手。)
什么是中斷
中斷是為了解決外部設(shè)備完成某些工作后通知CPU的一種機制(譬如硬盤完成讀寫操作后通過中斷告知CPU已經(jīng)完成)。早期沒有中斷機制的計算機就不得不通過輪詢來查詢外部設(shè)備的狀態(tài),由于輪詢是試探查詢的(也就是說設(shè)備不一定是就緒狀態(tài)),所以往往要做很多無用的查詢,從而導(dǎo)致效率非常低下。由于中斷是由外部設(shè)備主動通知CPU的,所以不需要CPU進行輪詢?nèi)ゲ樵儯蚀蟠筇嵘#ㄖ袛嗟囊饬x)
從物理學(xué)的角度看,中斷是一種電信號,由硬件設(shè)備產(chǎn)生,并直接送入中斷控制器(如8259A)的輸入引腳上,然后再由中斷控制器向處理器發(fā)送相應(yīng)的信號。處理器一經(jīng)檢測到該信號,便中斷自己當(dāng)前正在處理的工作,轉(zhuǎn)而去處理中斷。此后,處理器會通知OS 已經(jīng)產(chǎn)生中斷。這樣,OS就可以對這個中斷進行適當(dāng)?shù)奶幚怼2煌脑O(shè)備對應(yīng)的中斷不同,而每個中斷都通過一個唯一的數(shù)字標(biāo)識,這些值通常被稱為中斷請求線。
-
cpu
+關(guān)注
關(guān)注
68文章
11061瀏覽量
216440 -
設(shè)備
+關(guān)注
關(guān)注
2文章
4655瀏覽量
71590 -
中斷
+關(guān)注
關(guān)注
5文章
905瀏覽量
42619
發(fā)布評論請先 登錄
什么是中斷源?中斷源的分類介紹

中斷是什么?STM32中斷系統(tǒng)介紹和中斷配置步驟資料免費下載

中斷時間間隔的中斷服務(wù)程序?qū)崿F(xiàn)免費下載

關(guān)于MPSoC的中斷處理介紹
中斷系統(tǒng)詳解、外部中斷

STM32 中斷原理及外部中斷的實現(xiàn)

微機原理——8086中斷類型以及中斷向量表、中斷響應(yīng)、中斷返回

STM32(六)-------中斷(外部中斷)

12 . 中斷

評論