組み込みソフト開発にも「Eclipse」の波(2/6 ページ)
エンタープライズ分野のJava開発ではすでにデファクトスタンダードとなった「Eclipse」。ソフトウエア開発を包括的にサポートするこの開発プラットフォームは、組み込みソフトウエアにも対応すべく着々と進化を続けている。本稿では、Eclipseの組み込みソフト開発向けプロジェクト「DSDP」の現状を概観するとともに、組み込みソフト開発において同プロジェクトが果たすであろう役割について解説する。
DSDPのサブプロジェクト
現在、DSDPプロジェクトは6つのサブプロジェクトから構成されている。各サブプロジェクトは大きく以下の3つのグループに分類できる。
- 組み込み全般のサポート
- C/C++関連
- Java関連
各サブプロジェクトの基本情報を表1にまとめた。これら6つのプロジェクトで、現在までに55万行(コメント行を含まず)にも及ぶソースコードが開発されている。
以下、個々のサブプロジェクトについて、その概要と最新の状況を説明していく。
DDプロジェクト
DD(Device Debugging)プロジェクトは、その名が示すように、組み込みソフト開発におけるデバッグにフォーカスしたプロジェクトである。具体的には、良好な視認性と制御性を備える拡張されたデバッグモデルとAPI(application programming interface)、ビュー*2)を構築することを目指している(図1)。
2006年6月にリリースされたEclipse 3.2(Eclipse Callisto)から、デバッガの新しい拡張インターフェースが追加された。DDプロジェクトはこの拡張インターフェースを用いて、組み込み分野に適応させるべく、Eclipseのデバッグモデルにさらなる柔軟性とカスタマイズ性を与えようとしている。これらのインターフェースは、Eclipse PlatformやCDTにおいて、マルチコア対応のデバッグやオンチップでのデバッグをサポートするためのカスタムデバッガの実装に使われることになる。
2007年6月にリリースされたEclipse 3.3(Eclipse Europa)からは、「DSF(Debugger Services Framework)」と呼ばれる実装が追加された。DSFは、モジュール形式でEclipseのデバッガバックエンドに接続する新しいデバッガモデルである。また、SPIRITコンソーシアム*3)から提供されたIP-XACT*4)エディタとデバッガビューのプレビュー版を含んでいる。
上記のDSFやAPIを使用することにより、DDプロジェクトは、組み込みソフトウエアのデバッグに向けて以下のような機能を提供している。
- 複数同時並行のデバッグへの対応
- ステップ実行やデバッガビューの大量更新などのような低速なデバッガ操作に対しても、スレッドセーフで高速な応答性を保証
- レジスタ、メモリー、ブレークポイントなどに対応した独自デバッガコンポーネントに対するプラグイン機能の提供
- Eclipseの一般的なデバッグ用ビューに対して、組み込み用の機能を拡張。レジスタビューにおいてはビットフィールドの表示と、値の直接書き換えなどを実現
- ハードウエアと密接に連携したビューの追加。例えばフラッシュメモリーへの書き込み、ハードウエアの自己診断、プロセッサからキャッシュへのアクセスなどのために専用のビューを用意
DDプロジェクトでは、今後以下のような機能拡張を行う予定である。
- GNUのデバッグエンジンであるGDBに対するGDB/mi(GDB machine interface)サンプル実装の構築
- マルチコアやマルチプロセスに対するデバッガビューの拡張
- IP-XACTエディタの正式版
- IP-XACTを用いたデバッグ対象記述に対応するAPIの展開
脚注
※2…Eclipseにおいては、GUIウィンドウを構成する区分された表示領域のことを指す。一般的にはペインとも呼ばれる。
※3…主に半導体設計において、ベンダー間での仕様交換を実現することを目的とする団体。
※4…インターフェースやその機能を記述するためのXMLフォーマット。
Copyright © ITmedia, Inc. All Rights Reserved.