コンパイラのファジング

コンパイラはソフトウェア開発の基盤ツールであり,その信頼性確保は重要な課題である.コンパイラのテストは数千本から数十万本のテストプログラムから成るテストスイートを用いて行われるが,テストの数が有限である以上,どうしても不具合の見逃しは防げず,最新のGCC やLLVM/Clang などの比較的品質が高いとされるコンパイラにも多くの不具合が報告されている.近年,ランダムに生成したプログラムによりそのような不具合を検出するコンパイラ・ファジングのツールが幾つか開発され,成果を挙げている.本稿では,これまでに開発された手法やツールの狙いや課題について概観し,今後の方向性についての所感を述べる....

Full description

Saved in:
Bibliographic Details
Published in電子情報通信学会 基礎・境界ソサイエティ Fundamentals Review Vol. 9; no. 3; pp. 188 - 196
Main Author 石浦, 菜岐佐
Format Journal Article
LanguageJapanese
Published 一般社団法人 電子情報通信学会 01.01.2016
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:コンパイラはソフトウェア開発の基盤ツールであり,その信頼性確保は重要な課題である.コンパイラのテストは数千本から数十万本のテストプログラムから成るテストスイートを用いて行われるが,テストの数が有限である以上,どうしても不具合の見逃しは防げず,最新のGCC やLLVM/Clang などの比較的品質が高いとされるコンパイラにも多くの不具合が報告されている.近年,ランダムに生成したプログラムによりそのような不具合を検出するコンパイラ・ファジングのツールが幾つか開発され,成果を挙げている.本稿では,これまでに開発された手法やツールの狙いや課題について概観し,今後の方向性についての所感を述べる.
ISSN:1882-0875
DOI:10.1587/essfr.9.3_188