ソースコード解析ツールのベンダーである米Coverityは17日、2010年オープンソース品質評価レポートの結果を発表した。
オープンソース品質評価レポートは、2006年にコベリティと米国・国土安全保障省が官民共同で開始した「オープンソース
ソフトウェアのインテグリティに関する調査」のプロジェクトの結果をまとめたもの。本年のオープンソース品質評価レポート
には、ソフトウェアソースコードの説明責任と可視性の必要性を警鐘するため、携帯電話などで利用されることの多い
Androidカーネルに関する詳細な解析結果レポートが含まれている。
解析対象となったAndroidカーネルは、「Androidカーネル2.6.32」で、Qualcomm MSM7xxx/QSD8x50チップセット搭載の
スマートフォンで使用されている。
コベリティによる解析の結果、検出されたAndroidのソフトウェア・バグは359件で、そのうちの25%にあたる88件が、
セキュリティ侵害やクラッシュの危険性がある高リスクのバグであった。これらの高リスクバグのうち最も多かったのは、
不正なメモリアクセスのバグ29件で、次いで未初期化変数の28件となっている。また、271件確認されている中リスクバグ
では、Nullポインタの間接参照が83件と最も多かった。ただし、これらのバグの多くは、製品出荷前に除去可能な種類の
ものであるという。
コベリティのCEOであるセス・ハレム氏は、「Androidカーネルの品質は、そのソースコードの元となったLinuxカーネルの
品質と同じではない。まだ、そこまでのレベルには達していない」と語り、Androidに特化したコード部分は、Linuxのコード
よりも2倍以上のバグ密度であったことを明らかにしている。
このAndroidカーネルのバグ密度は、1000ソースコードあたり1バグと、業界平均よりも低い値である。しかし、全世界で
1日あたり6万台以上のAndroid端末が出荷されているという現状において、バグ密度が平均よりも低いことを単純に喜ぶ
ことはできない。この調査結果を受けてコベリティでは、GoogleとHTCに解析データを提供し、60日後にその内容を
公表する。さらに、カーネルの再解析を実施し、アップデートされたレポートを発表する予定であるという。
http://cloud.watch.impress.co.jp/docs/news/20101117_407479.html