gdb stub をがっつり書き換える
gdb stub の handle_exception は割り込みハンドラを上書きする形でインストールする。これにはいくつかメリットがあって
- stub を提供する側が確実に stub が動くようにコードを書く事が出来る
- 簡単に gdb stub を ON/OFF できる
などである。
一方でデメリットもあり結構困る。
- Page Fault で捕まえているアドレスアクセス違反などを gdb に返す事が出来ない。
- Page Faule の原因次第ではエラーではないから
- 各ハンドラでスケジューラを動かすことができない
など。
というわけで割り込みハンドラに埋め込む形で書き直そうと思う。ちらっと見た(古い) Linux でもそうなっていたような。