その他の関数
ソースコードを読む上で訳に立つ関数の説明を行う。
- local_irq_disble()
- ローカルCPUへの割り込みを禁止する。cli()と等価。
- local_irq_enable()
- ローカルCPUへの割り込みを禁止を解除する。sti()と同様の動作をする。
- local_bh_disable()
- ローカルCPU上でのソフト割り込みハンドラ実行を禁止する。
- local_bh_enable()
- ローカルCPU上でのソフト割り込みハンドラ実行を禁止を解除する。
- global_cli() ...マルチプロセッサシステムではcli()はこの関数に マッピングされている。
- ローカルCPUの割り込み禁止
- get_irqlock関数にて、以下のものの全てハンドラの待ち合わせを 行う。システム上の全ての割り込みハンドラ終了、ローカルCPU上の ソフト割り込みハンドラ終了、システム上の全ての旧方BHハンドラ終了。
- irq_enter()
- local_irq_countをカウントアップする。
- グローバルな全割り込み禁止の解除をビジーウェイトして待つ。
- irq_exit()
- local_irq_countをカウントダウンする。
- hardirq_trylock()
- ローカルCPU上で割り込みハンドラ動いておらず、 かつグローバルに割り込み禁止されていないことをチェック。 実際に何かをロックするわけではない(名前は過去のコードの名残)。
- in_interrupt()
- ローカルCPU上で、割り込みハンドラかソフト割り込み ハンドラが動いているかをチェックする。
(NIS)HirokazuTakahashi
2000年12月09日 (土) 23時55分06秒 JST1