関数説明
以下に上記ソフト割り込みハンドラ操作関数について説明する。
- open_softirq()
- 指定されたソフト割り込みレベルに、指定されたハンドラを登録する。 (登録先は softirq_action[]テーブル)
- cpu_raise_softirq()
- do_softirq()
- 登録されているソフト割り込みハンドラを実行する。
- システムコール出口、割り込みハンドラ出口、例外ハンドラ出口、 プロセス切替え時に、ソフト割り込み要求があると呼び出される。
- softirq_active()
- ソフト割り込みハンドラ起動要求があるか否かをチェックする。
- tasklet_schedule()、tasklet_hi_schedule()
- それぞれTASKLET_SOFTIRQレベル、HI_SOFTIRQにハンドラ登録。 ハンドラを登録する場合、各々tasklet_struct構造体を登録側で用意し、 ハンドラの情報を設定する。
- tasklet_struct構造体はtasklet_vec[]テーブル、tasklet_hi_vec[] テーブルにキューイングされる。
- tasklet_action()、tasklet_hi_action()
- TASKLET_SOFTIRQレベル、HI_SOFTREQレベルに登録された ハンドラ群を実行する。
- tasklet_vec[]テーブル、tasklet_hi_vecテーブルにキューイングされる tasklet_struct構造体に登録されたハンドラを呼び出す。
(NIS)HirokazuTakahashi
2000年12月09日 (土) 23時55分06秒 JST1