• 検索結果がありません。

要 旨

N/A
N/A
Protected

Academic year: 2021

シェア "要 旨"

Copied!
2
0
0

読み込み中.... (全文を見る)

全文

(1)

要 旨

シェープ解析を利用した動的データ構造に適した静的解析ツー ルの構築に関する研究

水野 雄介

近年,ソフトウェアの開発作業においてプログラムが複雑化するにつれて, ソフトウェア製 品に潜在する問題を発見することが困難になっている. 潜在的な不具合の検出を支援する手 法の一つに静的解析がある.

静的解析とは,プログラムを実行せず,ソースコードの意味上の誤りを解析して不具合部分 を発見したり,あるいは改善に役に立つ情報を提供したりすることをいう.静的解析ツールの

一つにAdLintと呼ばれるオープンソースのソフトウェアがある. AdLint,ソースコード

を解析し,潜在的に不具合となり得る箇所について数多くの警告を出力する.この解析ツー ルを活用することでコードレビュープロセスの大部分を自動化することが可能になる.しか

, AdLintではポインタに対する解析が正確ではない.この問題を改良するためにはポイン

タが指しうる要素についてより詳細に解析する必要がある.

ポインタが指しうる要素を詳細に解析する手法の一つとして,シェープ解析が提案されて いる. シェープ解析では,従来のポインタ解析手法とは異なり,ポインタが指しうる要素を一 つに要約することなく解析することで,より正確に解析することができる.

本研究では, シェープ解析法を用いてAdLintのポインタに対する解析結果をより正確で 有益な情報に変更する.

キーワード シェープ解析, AdLint, 動的データ構造, TVLA, COINS

i

(2)

Abstract

Development of a static analysis tool using shape analysis suitable for dynamic data structures

Yusuke Mizuno

In recent years, software has become complicated and it has become difficult to dis- cover a potential problem in a software product. Static analysis is one of the techniques to support the detection of the potential problem in a program.

Static analysis detects semantic errors in a source code without executing the code, or it outputs information that is useful for improving the code. AdLint is one of the open-source static analysis tools. Analyzing a source code, AdLint outputs a lot of warnings about potential bugs. This analysis tool can automate most of the code review process. However, AdLint is not accurate at the pointer analysis, and it outputs many false warnings. In dealing with this problem, it is necessary to analyze the element to which a pointer may point.

The shape analysis has been proposed as one of such techniques. The shape analysis provides more accurate analysis than usual pointer analysis, by avoiding summarizing the potential elements to which a pointer may point as a single element.

In this study, we propose a method for improving the analysis result of AdLint about pointers by means of the shape analysis.

key words shape analysis, AdLint, dynamic data structure, TVLA, COINS,

ii

参照

関連したドキュメント

In order to be able to apply the Cartan–K¨ ahler theorem to prove existence of solutions in the real-analytic category, one needs a stronger result than Proposition 2.3; one needs

Besides the number of blow-up points for the numerical solutions, it is worth mentioning that Groisman also proved that the blow-up rate for his numerical solution is

This paper presents an investigation into the mechanics of this specific problem and develops an analytical approach that accounts for the effects of geometrical and material data on

While conducting an experiment regarding fetal move- ments as a result of Pulsed Wave Doppler (PWD) ultrasound, [8] we encountered the severe artifacts in the acquired image2.

F rom the point of view of analysis of turbulent kineti energy models the result.. presented in this paper an be onsidered as a natural ontinuation of

The explicit treatment of the metaplectic representa- tion requires various methods from analysis and geometry, in addition to the algebraic methods; and it is our aim in a series

We have avoided most of the references to the theory of semisimple Lie groups and representation theory, and instead given direct constructions of the key objects, such as for

This makes a somewhat more sophisticated analysis of the behaviour of that vertex necessary, which represents the curvature minimum (Lemma 3). [Gr1, § 2, Main Theorem]), we are able