- - PR -
まもなく開催されるESEC。The MathWorks/サイバネットシステムは今年、モデルベースデザイン支援ツール「MATLAB/Simulink」に加え、昨年11月に取り扱いを発表した静的検証ツール「PolySpace」を出展する。
ソースコードにエラーがないことを証明する、静的検証ツールPolySpace
PolySpaceは、数学理論に基づく形式手法により、発見が困難な実行時(ランタイム)エラーをソースコードのコンパイル前に検証するツールだ。具体的には、ユーザーが入力したソースコードに対し、変数の値をトレースして演算の正しさを判別。その結果を4色に分類(正常 /必ずエラーが発生する/実行されない /場合によってはエラーが発生する)して表示する。
![]() |
| サイバネット 応用システム第1事業部 技術部 アドバンストサポート第2グループ 渡辺 繁氏 |
関数・ファイル間に渡る制御フローに沿って変数の値を追跡し、検査対象となる各演算の“正しさ”を漏れ(偽陰性)なく網羅的に検証している。テストケースを作成しなくても、実行時エラーが検出でき、同時にエラーが存在しないことも確認できる。
つまり、「一般的な静的解析ツールがバグ(エラー)を見つけるものだとすれば、PolySpaceはバグが1つもない(ゼロである)ことを証明するツール」――と担当者の渡辺氏(サイバネットシステム)が語るように、これまでの静的・動的ツールでは難しかったソースコードに実行時エラーが潜在しない信頼性の確認を、静的検証のみで行うことを可能にしたのがPolySpaceだ。
| 注:PolySpace自体は1996年にフランスの研究機関によって実用化され、日本でも2001年から販売されている実績のあるツール。導入事例としては、航空宇宙・防衛、自動車、産業装置、交通・運輸、家電製品、医療機器など多岐に渡る |
![]() |
| 画像1 PolySpaceでの表示例 演算の正しさを判別することで、コードの信頼性を測定する。4色の配分はグリーン・レッド・グレー・オレンジで、それぞれ「正常」「必ずエラーが発生する」「実行されない」「場合によってはエラーが発生する」 |
検出される実行時エラーとは、コンパイル時には検出されずにプログラム実行中に発生するソフトウェアの致命的な不具合のことで、PolySpaceでは主に以下のエラーがそれに当たる。実行時エラーは、まれにしか発生せず、また再現性の乏しいことから、テストでの発見は難しいとされている。ただし、一度起こるとメモリ破壊や暴走を引き起こし、もし出荷後に発生すると、リコールなどの多大な損害が発生してしまうため早期発見が求められている。
|
サイバネットシステムの展示ブースでは、上記のエラーを含むサンプルコードを基に、実際にPolySpaceを使用した検証結果を確認できるという。
![]() |
| 画像2 PolySpaceの運用イメージ
複数のユーザーが複数のPolySpaceクライアントからコンピュータクラスタ上のPolySpaceサーバを使用するイメージ。各検証ジョブは実行可能なサーバに送信され、そこで実行された検証結果をクライアントからダウンロードできる |
高い信頼性が求められる組み込みソフトウェア開発の現場では、実行時エラーを除くためにテストケースの作成やレビューなどに多大なコスト・時間が費やされているのが現状だ。テストケースの作成も不要で、実行時エラーを確認できるPolySpaceの操作性を会場で試してみてはいかがだろうか。
MATLAB/Simulinkとの連携も
さらに、PolySpaceはMATLAB/Simulinkとの連携も可能にしている。モデルから生成したソースコードのPolySpaceの検証結果からモデル側の該当箇所へリンクし、コードの設計仕様であるモデルの問題を確認でき、より早期段階で問題点を修正できる。
![]() |
| 画像3 モデルベースデザイン用アドオンによる連携画面 |
◇
なお、会場では、実行時エラー当てクイズの簡単な催しも予定されているとのこと。
| 展示会 | 第12回 組込みシステム開発技術展(ESEC2009) |
| 開催日 | 2009年5月13日(水)から15日(金) |
| 会場 | 東京ビッグサイト |
| ブース番号 | 東40-51 |
関連記事 ESEC2009
- ESEC2009 特集ページ
- 触ってみたいと思わせるインターフェイスが価値を生む
- 古くて新しい組み込み技術「音声認識/音声合成」のいま
- USB3.0は高速化のほかに何が変わる? 2.0との比較
- ケータイアプリ事情−iPhoneからAndroidへの移植も
- 見えてきた!? ケータイ以外でのAndroidの適用例
- エコポイントで高効率電源の導入に拍車が掛かる
- Windows 7に期待 広がるタッチパネルの用途
- ECUを“徹底的”にテストするソリューション
- ハードウェア性能を最大限に生かすために
- 2009年最新製品・技術が集結 − ウインドリバー
- インテルXeonプロセッサ搭載の組み込みコンピュータ
- ハードとソフトの融合で機能の見える化を強化
- “サポート15年”Windows Embeddedの開発テク
- ZigBee開発のすそ野を広げるiDigi
- 組み込みソフト開発インフラを提供する図研
- “非ケータイ”で輝くAndroidの秘めたる可能性
- ランタイムエラーを静的検証のみで自動検出!
- 組み込みがカギを握る電気自動車の将来
- “電源効率90%”小型デジタル電源に注目
組み込み開発フォーラム 新着記事
- フルスクラッチの“Hello World”を動かしてみよう(2011/3/31)
- FlexRayプロトコルの概要(その2)(2011/3/29)
- JASA、東北地域に拠点を置く会員企業を支援(2011/3/25)
- NEC、震災の影響を受けた4拠点の生産再開を発表(2011/3/23)
- 内部ブロック図の基礎と共通要素(2011/3/22)
- インテル、被災地におけるITインフラの復旧を支援(2011/3/22)
- Facts on AUTOSAR/AUTOSAR導入の現実(2011/3/18)
- 計測器・震災被害ホットラインを開設、テクトロニクス(2011/3/18)
- ZMP、地震の揺れを多角的に計測するアプリ無償配布(2011/3/16)
- メンター、3Dテレビ・マルチメディア検証プラットフォーム(2011/3/16)
- 【番外編】タチの良い計測値、悪い計測値とは?(2011/3/15)
- tarファイルシステムをAndroidに組み込む!!(2011/3/10)

















