一部のソフトウェアを物理ハードウェア デバイスの使用から完全なソフトウェア シミュレーションに変換しています。現在、割り込み処理部分を検討しています。
このコードが物理ハードウェアを駆動していたときは、 経由request_irq()
で IRQ を要求していましたが、物理デバイスがなくなったので、「softirq」メソッドを使用するようにコードを変更するつもりでした。
1 つの懸念事項として、softirq は実際には、スケジューラによって呼び出されるまで待機する必要がある単なるイベントであることがわかります。一方、ハードウェア割り込みを使用すると、実行中のアクティビティが即座に中断されます。これは、softirq を使用するようにコードを変換すると、元のコードには存在しなかったスケジューリングの遅延が発生することを意味します。
私の理解は正しいですか?
HW irq のようにすぐに中断するように softirq を登録できる方法はありますか?
そうでない場合は、とにかく無料の HW irq 番号を選択して使用し続けrequest_irq()
、HW デバイスを実行していると思わせるように「だます」方法はありますか?