1. 程式人生 > >軟中斷和硬中斷區別

軟中斷和硬中斷區別

軟中斷:
1、程式設計異常通常叫做軟中斷;
2、軟中斷是通訊程序之間用來模擬硬中斷的 一種訊號通訊方式;
3、 中斷源發中斷請求或軟中斷訊號後,CPU或接收程序在適當的時機自動進行中斷處理或完成軟中斷訊號對應的功能;
4、軟中斷是軟體實現的中斷,也就是程式執行時其他程式對它的中斷;而硬中斷是硬體實現的中斷,是程式執行時裝置對它的中斷。

硬中斷:
1、 硬中斷是由外部事件引起的因此具有隨機性和突發性;軟中斷是執行中斷指令產生的,無面外部施加中斷請求訊號,因此中斷的發生不是隨機的而是由程式安排好的;
2、硬中斷的中斷響應週期,CPU需要發中斷回合訊號(NMI不需要),而軟中斷的中斷響應週期,CPU不需發中斷回合訊號;
3、硬中斷的中斷號是由中斷控制器提供的(NMI硬中斷中斷號系統指定為02H);軟中斷的中斷號由指令直接給出,無需使用中斷控制器;
4、硬中斷是可遮蔽的(NMI硬中斷不可遮蔽),軟中斷不可遮蔽。

區別:
1、軟中斷髮生的時間是由程式控制的,而硬中斷髮生的時間是隨機的;
2、軟中斷是由程式呼叫發生的,而硬中斷是由外設引發的;
3、硬體中斷處理程式要確保它能快速地完成它的任務,這樣程式執行時才不會等待較長時間‍。