研究課題/領域番号 |
12680348
|
研究機関 | 大阪大学 |
研究代表者 |
井上 克郎 大阪大学, 大学院・基礎工学研究科, 教授 (20168438)
|
研究分担者 |
松下 誠 大阪大学, 大学院・基礎工学研究科, 助手 (60304028)
楠本 真二 大阪大学, 大学院・基礎工学研究科, 助教授 (30234438)
|
キーワード | オブジェクト指向言語 / データ依存解析 / エイリアス解析 / プログラムスライス |
研究概要 |
本年は、プログラムの静的および動的な解析手法に関するさまざまな課題に対して取り組み、以下のような成果を得た。 実行時に決定される要素を多数含む、オブジェクト指向プログラミング言語の解析においては、静的解析によって判明することが少ないため、動的解析が必要である。しかし、動的解析はソースプログラムの持つ多くの情報を取り扱う必要があるため、データ爆発が起きないよう注意する必要がある。そこで本年度は、必要な情報を収集するプログラムを解析対象のプログラムに追加することによって、効果的に動的なデータ依存解析を行う手法の提案を行った。 不適切な情報漏曳を防ぐために、プログラムの持つ機密情報が漏曳していないかどうかを、プログラムを解析することによって確認することは重要である。しかし、従来は手続き型言語に対する解析アルゴリズムしか知られていなかった。そこで、本年度は、実際にアルゴリズムを用いて解析を行うシステムの作成を行った。また、近年はオブジェクト指向言語が広く用いられているため、アルゴリズムを拡張して、オブジェクト指向言語に対する解析アルゴリズムとして再定義した。 解析手法の結果として、変数の参照渡しやポインタを介した間接参照等で生じる、識別子が異なるにも関わらず同じメモリ領域を指す可能性のある変数および式の集合(エイリアス)がある。エイリアスは比較的容易に理解できる概念であるにも関わらず、エイリアス解析結果は繁雑になることが多く、解析結果の表示は困難となっていた。そこで本年度は、解析結果そのものの再利用性、モジュール性に着目して、エイリアス解析手法とその表示ツールの試作を行った。
|