Reverse Watchpoint(平成12年度 夏学期 情報輪講)

バグの原因を特定することは、バグの影響がその原因よりも
ずっと後で発覚する場合、特に困難である。そのようなバグを
調査するのに有効な手段として、デバッガの持つウォッチポイント
(データ・アクセス・ブレークポイント)の仕組みがあるが、
プログラムの実行を順序通りに追跡するため、プログラマは
バグの原因ではない場合にも、デバッガからの報告を吟味
しなければならない。

しかし多くの場合、その報告のうちの最後のもの、すなわち
バグの影響が出た場所の直前の報告がバグの原因となっている。
そこで、

 1. デバッガからの報告の履歴を自動的に取得し、
 2. その最後の場所にプログラムの制御を移す

ための仕組みである、``reverse watchpoint'' を提案する。
これは、ソースコードの変換とデバッガに多少の拡張を施す
ことで実現でき、現実的な実行時間で動作することを示す。
研究紹介のページへ