外部中斷與內部中斷

2021-05-24 00:37:16 字數 1472 閱讀 6715

外部中斷與內部中斷

中斷基本概念

什麼是中斷?先打個比方。當乙個經理正處理檔案時,**鈴響了(中斷請求),不得不在檔案上做乙個記號(返回位址),暫停工作,去接**(中斷),並指示「按第二方案辦」(調中斷服務程式),然後,再靜下心來(恢復中斷前狀態),接著處理檔案……。計算機科學家觀察了類似例項,「外師物化,內得心源」,借用了這些思想、處理方式和名稱,研製了一系列中斷服務程式及其排程系統。

中斷是cpu處理外部突發事件的乙個重要技術。它能使cpu在執行過程中對外部事件發出的中斷請求及時地進行處理,處理完成後又立即返回斷點,繼續進行cpu原來的工作。引起中斷的原因或者說發出中斷請求的**叫做中斷源。根據中斷源的不同,可以把中斷分為硬體中斷和軟體中斷兩大類,而硬體中斷又可以分為

外部中斷和

內部中斷 兩類。

外部中斷一般是指由計算機外設發出的中斷請求,如:鍵盤中斷、印表機中斷、定時器中斷等。外部中斷是可以遮蔽的中斷,也就是說,利用中斷控制器可以遮蔽這些外部裝置 的中斷請求。

內部中斷是指因硬體出錯(如突然掉電、奇偶校驗錯等)或運算出錯(除數為零、運算 溢位、單步中斷等)所引起的中斷。內部中斷是不可遮蔽的中斷。

軟體中斷其實並不是真正的中斷,它們只是可被呼叫執行的一般程式。例如:rom bios中的各種外部裝置管理中斷服務程式(鍵盤管理中斷、顯示器管理中斷、印表機管理 中斷等,)以及dos的系統功能呼叫(int 21h)等都是軟體中斷。 cpu為了處理併發的中斷請求,規定了中斷的優先權,中斷優先權由高到低的順序是: (1)除法錯、溢位中斷、軟體中斷 (2)不可遮蔽中斷 (3)可遮蔽中斷 (4)單步中斷。

2. 中斷與計算機病毒 計算機作業系統是開放的,使用者可以修改擴充作業系統,在計算機上實現新的功能。 

修改作業系統的主要方式之一是擴充中斷功能。計算機提供很多中斷,合理合法地修改中斷會給計算機增加非常有用的新功能。如 int 10h是螢幕顯示中斷,原只能顯示西文,而在各種漢字系統中都可以通過修改int 10h使計算機能夠顯示中文。另一方面,計算機病毒則篡改中斷為其達到傳染、激發等目 的服務,與病毒有關的重要中斷有: int 08h和int 1ch定時中斷,每秒呼叫18.2次,有些病毒利用它們的記時判斷 激發條件。 int 09h鍵盤輸入中斷,病毒用於監視使用者擊鍵情況。 int 10h螢幕輸入輸出中斷,一些病毒用於在螢幕上顯示字元圖形表現自己。 int 13h磁碟輸入輸出中斷,引導型病毒用於傳染病毒和格式化磁碟。 int 21h dos功能呼叫,包含了dos的大部分功能,已發現的絕大多數檔案型病毒 修改int 21h中斷,因此也成為防病毒的重點監視部位。 int 24h dos的嚴重錯誤處理中斷,檔案型病毒常進行修改,以防止傳染寫保護磁 盤時被發現。

中斷子程式的入口位址存放在計算機記憶體的最低端,病毒竊取和修改中斷的人口地 址獲得中斷的控制權,在中斷服務過程中插入病毒的「私貨」。

總之,中斷可以被使用者程式所修改,從而使得中斷服務程式被使用者指定的程式所替代。這樣雖然大大地方便了使用者,但也給計算機病毒製造者以可乘之機。病毒正是通過修 改中斷以使該中斷指向病毒自身來進行發作和傳染的。

ARM9260內部中斷和外部中斷觸發方式

1.內部中斷 0 31 內部中斷可以有4中觸發方式static struct irq chip at91 aic chip static int at91 aic set type struct irq data d,unsigned type smr at91 aic read at91 aic ...

外部中斷與定時器中斷實驗

已知微控制器晶振頻率為12mhz,自行選取定時 計數器,定時 計數器工作方式自選,編寫程式,使p1.7端輸出週期為0.5ms方波。解題思路 假設方波訊號的占空比為50 已知條件可以得,機器週期為1us,所以決定採用t0定時,工作方式0,已知輸出週期為0.5ms,則每定時0.25ms計數使p1.7輸出...

外部IO中斷和IPI中斷

中斷大概分為兩種 可能不太準確 一種是外部io中斷,如網路資料報到達後向cpu發起的中斷 另一種是處理器間中斷ipi,如在smp系統中乙個cpu給另乙個cpu傳送中斷來重新整理tlb。1.處理器間中斷ipi 在smp系統中,每個cpu都有乙個lapic,lapc有兩個重要的控制器 apic icr ...