[学士論文] プログラム内部状態観測のための仮想ファイルシステムを用いた汎用デバッグインタフェース

小林研B4の平ノ内さんが学士論文を提出しました.

題目:プログラム内部状態観測のための仮想ファイルシステムを用いた汎用デバッグインタフェース
内容梗概:

現代社会では、あらゆる分野においてソフトウェアが利用されており、プログラムに問題が発生すると社会経済活動に大きな影響を及ぼすことも少なくない。プログラムの問題を迅速に解決するためには、稼働中と同等の環境において内部状態を観測し、問題の原因箇所を発見することが有効である。この内部状態の観測では、観測したい対象を動的に指定可能であり、プログラムの動作に対する副作用が小さいことが求められる。また、内部状態の素早い把握のために、解決したい問題や観測したい内容に適した様々な分析ができると望ましい。

本論文では、仮想ファイルシステムをインタフェースとして用いるデバッガを提案する。観測対象の指定および観測結果の取得を、ファイルシステムに対する汎用的な操作によって行うことができ、外部のツールに分析を任せることが可能になる。また、観測タイミングの調整手法と観測箇所の設定の支援手法を提案する。

さらに、仮想ファイルシステムフレームワークFUSEを用いて提案手法を実現するデバッガMewdFSを作成した。ブレークポイントの設置を行うツールとして、既存研究の成果であるProbeJを利用することで、動作中のJavaプログラムの実行を停止することなく観測することを可能にする。実装したデバッガとProbeJを用いてJavaプログラムの観測をすることで提案手法の評価を行い、提案手法の有用性を確認した。