組込み総合技術展「ET2010」会場レポート

ET2010展示会場から(2)――組込みインフラと開発ツールの進化

この記事を読むのに必要な時間:およそ 2 分

機能安全ISO26262の適合チェックソリューション――東陽テクニカ

ET2010の東陽テクニカのブースでは,QAC/QAC++に関連した開発支援ツールの展示が行われていた。今回の展示でフューチャーしていたのは,⁠機能安全」管理に関するソリューションだった。機能安全とは,簡単にいうと所定の機能が正しく働かなかった場合のリスクを社会的に許容できる範囲まで制御するという考え方だ。自動車や制御系では,とくに重要視される概念であり,ISOでは26262として機能安全の基準やプロセスが規格化されている。

東陽テクニカのブース

東陽テクニカのブース

機能安全とQACの解説パネル

機能安全とQACの解説パネル

Webベースの解析情報管理ツールの画面

Webベースの解析情報管理ツールの画面

ブースでの展示内容は,⁠QAC/QA MISRA」によるソフトウェアのユニット設計と実装フェーズの支援を行うものと,ソフトウェアのデバッグ情報や解析結果を可視化するものだった。前者は,ISO 26262における「安全ライフサイクル」のうちソフトウェア開発に関わる部分について,設計やコーディングがどの程度ISO 26262に適合しているかのチェックができるというものだ。後者は,QAC MISというWebベースの情報管理ツールをデモしながら,ソフトウェアの解析結果を表示させていた。

QAC MISの解説パネル

QAC MISの解説パネル

解析情報などをグラフ化する

解析情報などをグラフ化する

ユーザーモードでデバイスドライバ開発――エクセルソフト

デバイスドライバの開発といえば,当然デバイスの動作と密接にからんで物理レイヤやタイミングを考慮した高度なプログラミングの話になりそうだが,もっと上位のレイヤでデバイスドライバの開発を支援するツールキットをET2010の会場で見つけた。

エクセルソフトのブース

エクセルソフトのブース

そのツールキットは,エクセルソフトのブースでデモが行われていた「WinDriver」である。具体的には,検出されたハードウェアに対して,ウィザードI形式(GUI)でレジスタの値や動作コマンドを指定すると,自動的にデバイスドライバのコードを生成してくれる。この生成コードはいわばテンプレートなので,最終的には細かい微調整が必要だが,基本的には,カーネルの深い知識がなくてもデバイスドライバが開発できるという。

WinDriverでの開発デモ風景

WinDriverでの開発デモ風景

ドライバ開発キットWinDriver

ドライバ開発キットWinDriver

このことは,デバイスドライバをユーザーモードプログラムのように開発できるということだそうだ。生成されたデバイスドライバはアプリケーションの中に組み込むこともできるし,DLLファイルに落とすことも可能だそうだ。

このような開発手法がとれるなら,デバイスドライバ開発のハードルを下げ,アプリケーション開発の効率を上げることができる。また,制御するデバイスの機能が限定されるような場合,ベンダーが提供するドライバを使うより,コンパクトなサイズにすることも可能だ。PCI-ExpressやUSBに接続された簡単なデバイスで,レジスタの値を制御したいといった基本的なデバイス制御部分を簡単に開発したい場合には,このWinDriverが活躍できるとのことだ。

OSはWindows 7,CE,Mac OS,Linux,Solarisなどに対応している。開発環境としては,Visual Studio 2010もサポート済みだそうだ。他にもGCCやBorland C++にも対応している。

ドライバの機能設定画面。ここで入力した内容のデバイスドライバコードが自動生成される

ドライバの機能設定画面。ここで入力した内容のデバイスドライバコードが自動生成される

簡単なドライバを実行しているところ

簡単なドライバを実行しているところ

著者プロフィール

中尾真二(なかおしんじ)

1961年生まれ。ハードウェア・コンピュータ技術者からアスキーに転職し,およそ10年ほど技術書籍・雑誌の編集に携わる。その後,オライリー・ジャパンで5年ほど企画・編集に従事。編集長時代に当時の日本法人社長とケンカしてクビに(笑)。現在はRBB TODAY,レスポンス他でニュース,コラムなどを編集・執筆。