软中断和硬中断
硬中斷:由與系統相連的外設(比如網卡、硬盤)自動產生的。主要是用來通知操作系統系統外設狀態的變化。比如當網卡收到數據包的時候,就會發出一個中斷
軟中斷:
2.為了滿足實時系統的要求,中斷處理應該是越快越好。linux為了實現這個特點,當中斷發生的時候,硬中斷處理那些短時間就可以完成的工作,而將那些處理事件比較長的工作,放到中斷之后來完成,也就是軟中斷(softirq)來完成
差別
①硬中斷是由外部事件引起的因此具有隨機性和突發性;
軟中斷是執行中斷指令產生的,無面外部施加中斷請求信號,因此中斷的發生不是隨機的而是由程序安排好的。
②硬中斷的中斷響應周期,CPU需要發中斷回合信號(NMI不需要);
軟中斷的中斷響應周期,CPU不需發中斷回合信號。
③硬中斷的中斷號是由中斷控制器提供的(NMI硬中斷中斷號系統指定為02H);
軟中斷的中斷號由指令直接給出,無需使用中斷控制器。
④硬中斷是可屏蔽的(NMI硬中斷不可屏蔽);
軟中斷不可屏蔽。
總結
- 上一篇: 常见mysql性能优化方法
- 下一篇: socket什么情况下可读