目錄上半部
下半部有關核心棧
中斷:非同步中斷,由其他硬體裝置依照cpu時鐘訊號隨機產生,比如間隔定時器和io裝置
異常:同步中斷,當指令執行時由cpu控制單元產生的,即程式的錯誤產生的
linux利用中斷門(清if標誌,不響應中斷請求)處理中斷,利用陷阱門(不修改if標誌)處理異常
idt裡的表項也叫門描述符
響應中斷後關鍵而緊急的部分,核心立即執行,關中斷執行,中斷處理程式
響應乙個特定中斷時,核心執行的函式
簡單的劃分標準
響應中斷後可以推遲的部分,核心隨後執行,開中斷執行。執行與中斷處理密切相關但中斷處理程式不執行的工作
靜態定義的下半部介面,有32個
用於效能需求比較高的情況
用於執行頻率很高的情況
在編譯期間靜態註冊
只有中斷處理程式搶占軟中斷
執行時機
基於軟中斷(所以有軟中斷的基本特點)實現的的下半部介面,一般下半部使用tasklet
把工作推後,交由乙個核心執行緒去執行——這個下半部分總會在程序上下文中執行
每個處理器對應乙個核心執行緒
也是一次執行所有延遲工作
鍊錶上有物件,狀態設為task_running;鍊錶上沒有物件了,狀態設為task_interruptible
處理固定個數的軟中斷,過量軟中斷交給ksoftirq執行緒
執行軟中斷的乙個核心執行緒,每個cpu都有自己的
如果核心棧是8kb,那麼當前被中斷程序的核心棧被用作中斷棧
如果核心棧是4kb,核心就使用3種型別的核心棧
中斷和異常
中斷和異常 中斷訊號的處理方式 分緊急部分和不緊急部分 中斷處理 必須能夠重入,以便能夠中斷巢狀 中斷和異常的產生 乙個irq interrupt request 代表中斷控制器上的一根中斷線,和乙個中斷向量 單cpu 可程式設計中斷控制器 pic 多cpu 改進的可程式設計中斷控制器 apic 乙...
中斷和異常
中斷通常定義為乙個事件,該事件改變處理器執行的指令順序。中斷通常分為同步中斷與非同步中斷。異常是同步的,i o中斷是非同步的。中斷可以分為 i o裝置發出的中斷請求 irq 都可以被遮蔽,乙個中斷被遮蔽以後,控制單元就忽略他。只有硬體故障等幾個危急事件才是非遮蔽中斷。異常可以分為 可以糾正的異常,例...
中斷和異常
1 中斷機制的誕生 早期計算機,各程式只能序列執行,系統資源利用率低,為了解決這個問題,從而誕生了作業系統 作為計算機的管理者 引入中斷機制,實現了多道程式併發執行。本質 發生中斷就意味著需要作業系統介入,開展管理工作。2 中斷的概念和作用 1 當中斷發生時,cpu立即進入核心態。2 當中斷發生後,...