計算機中斷(轉貼,很經典的解釋)

2021-04-01 20:21:32 字數 1317 閱讀 2376

熟悉windows的人都知道,在系統設定中,幾乎沒有硬體都涉及到一些irq號,這些irq號

是什麼意思呢?irq(interupt request)——中斷請求號。什麼是計算機中斷?

計算機中斷——顧名思義,就是計算機由於遇到一些緊急情況,中斷現在的工作,轉而

處理緊急情況,處理完緊急情況以後再回到以前執行的工作繼續執行。不過這只是狹義的計

算機中段概念。因為這個概念只能解釋內部中斷和外部中斷,然而對於軟體中斷卻不能套用

次概念。

為了讓我們更加方便的理解中斷這個概念,然我們打個比方:假設你在上網,突然你的

朋友要你去踢足球,這就是中斷請求。然後你對他喊道:「我就來!等一等!」這就是中斷

響應。接著你就和他踢足球去了,這就是中斷處理。踢完足球以後,你再回到你的計算機前

面接著上網,這就叫做中斷返回。從以上可以看出,中斷分為4個步驟:中斷請求->中斷響

應->中斷處理->中斷返回。

以下我都會以這個例子為基礎闡述我對於中斷的理解。

首先讓我們對中斷分一分類。有一種分類情況:1.可遮蔽中斷 2.不可遮蔽中斷。

所謂可屏障中斷很好理解,以那個例子為例。你的朋友叫你踢足球,但是你可能正在和

你心儀的美眉聊得正開心,於是你不響應這個中斷,那麼這個中斷就是可遮蔽中斷。

假如中斷你的不是這件事,而是叫你去領獎金,過期不侯,那麼你是無論如何也要相應

這個中斷了。這就是不可遮蔽中斷。

一般來說,像什麼嚴重情況產生的中斷一般都是非可遮蔽中斷,比如:電源掉電等等。

可遮蔽中斷和非可遮蔽中斷對應著cpu的兩根針,是嚴格區分的。

還有一種中斷分類方法:內部中斷、外部中斷、軟體中斷。

內部中斷是cpu自己發生異常產生的中斷。其中最重要的是「除0中斷」和「溢位中斷」

。大家都知道,除數是不能為0的,如果在cpu的執行過程中出現了這種情況的話,那麼就會

產生乙個中斷,由系統自動執行,由於中斷號為「0」,所以也叫0號中斷;溢位中斷是在cpu的運算過程中產生溢位,由應用程式執行。溢位這個概念比較複雜,需要一定的計算機編碼

知識,不在這兒的討論之列。

外部中斷是計算機的外部裝置給cpu的中斷請求,例如:時鐘、鍵盤、滑鼠等等。這些中

斷都是可以遮蔽的。我們在鍵盤上輸入了『a』,結果在螢幕上顯示出來了,這都是中斷的功

勞。軟體中斷就是應用程式提出的中斷了,是不可能被遮蔽的。每乙個軟體中斷都對應乙個

標準的功能,如:在螢幕上顯示乙個字串,準備從鍵盤接受乙個字元等等。

最後我們回到 irq 號,為什麼中斷要編號,因為只有編號,cpu才知道向cpu提出的是什

麼中斷。比如 irq 1是時鐘中斷,irq 2是鍵盤中斷等等。

計算機中斷理解

一.什麼是中斷 計算機中斷 顧名思義,就是計算機由於遇到一些緊急情況,中斷現在的工作,轉而 處理緊急情況,處理完緊急情況以後再回到以前執行的工作繼續執行。不過這只是狹義的計 算機中段概念。因為這個概念只能解釋內部中斷和外部中斷,然而對於軟體中斷卻不能套用 次概念。為了讓我們更加方便的理解中斷這個概念...

計算機中斷與異常總結

軟體產生的中斷 異常源異常分類 不可遮蔽中斷 nmi 開啟和關閉中斷 8259a產生中斷 中斷和異常是一些提示性事件,這些事件表明系統 處理器或者當前執行程式或任務存在著某種狀況,需要處理器注意。典型情況下,中斷是在程式執行期間隨機發生的,是對硬體訊號的響應。系統硬體使用中斷去處理處理器的外部事件,...

計算機中斷例程和啟動過程

首先將幾個概念,中斷程式處理和中斷向量表。cpu在執行一段程式的時候,檢測到從cpu內部或外部發來的特殊訊號,並且可以對該訊號立即處理,暫時不去處理當前執行的程式。等該訊號處理完成後,可以返回繼續執行程式。這種訊號就是中斷資訊。相當於銀行的vip使用者 然後的問題就是怎麼產生訊號和如何處理訊號了。有...