News and Views 2009 Autumn
[FEATURE STORY 1 | 組込みソフトウェア]
Androidの可能性と適応範囲を拡大
メンター・グラフィックスが提供する、革新的な製品をより短期間で開発可能にするための開発プラットフォーム
Android応用デバイス開発プラットフォームは、Androidの適用範囲を、マルチメディア、モバイル・インターネット、デジタル・ビデオ/ホーム・エンターテイメント、自動車、医療、ネットワーク、計測、産業用制御機器にまで拡大する、システム開発者およびアプリケーション開発者のための環境です。メンター・グラフィックスは、オープンソース・ソフトウェア(OSS)をインテリジェントな機器に活用し、最適化する上で他に類のない専門技術を有しており、OSSに基づいた商用製品を市場に投入してきた長い歴史があります。この経験が、Android応用デバイス開発プラットフォームの基盤となっています。
ANDROID応用デバイス開発プラットフォームの概要
メンター・グラフィックスは、一連のOSSコンポーネントを統合し、ボードレベルの移植やアプリケーション開発に利用できる使いやすい開発環境として提供しています。クロス開発キットとして構成されたAndroid応用デバイス開発プラットフォーム(図1)は、最高のOSSを統合、最適化、完全サポートした形で提供し、開発者は、商用製品を効率的かつスケジュール通りに、予算内で構築可能です。Android応用デバイス開発プラットフォームには、クロス・コンパイラ、ライブラリ、デバッガ、構築済みのファイルシステム実行イメージ、特定製品向けサポート・ライブラリも含まれています。
特長
- システムレベルおよびアプリケーション・ソフトウェアのクロス開発をサポートし、Androidプラットフォームが動作する機器を開発するための最適な開発環境を提供
- 最新のプロダクション・カーネル、ランタイム・ライブラリおよびその他のコア・コンポーネントを装備し、最新の安定したLinuxおよびAndroidランタイムでの作業を保証
- Dalvik Virtual MachineならびにJava Native Interface (JNI)を移植し、Androidベースの機器で使用するCPUおよびアーキテクチャ向けに最適化
- Androidアプリケーション・フレームワークおよびSDK(Eclipseプラグイン)は、Android開発当初に想定されていたハンドセットを超える範囲まで拡張されており、特定製品向けのSDKおよびエミュレータも利用可能
- 特定の製品および産業分野向けクラスの開発も可能
さらに、ネイティブな非Javaアプリケーション、例えば既に開発済みのアプリケーションや、製品ライン独自のアプリケーション、またはオープンソースで入手可能な非JavaアプリケーションなどもAndroidに統合できます。またAndroid応用デバイス開発プラットフォームでは、製品固有のC/C++ライブラリを開発、追加することが可能です。カスタム・アプリケーションを構築し、ボードレベル・ポートに統合するために、Android応用デバイス開発プラットフォームは、開発チームのソース・コントロール・システムに即座に統合可能にするリリース管理機能を備えた開発環境を提供しています。これは開発および製品用のFlashイメージを作成できるよう最適化し、コンフィギュレーション済みの状態で提供されます。必要に応じて、開発チームはコンポーネントを追加し、開発システム全体をソースから再構築できます。
ECLIPSEベースのIDEを使って問題を素早く発見、修正
Android応用デバイス開発プラットフォームは、グラフィカルなEclipseベースの統合開発構築(IDE)を備えており、ソースコード、スクリプト、コンフィギュレーションをステップ実行して問題を素早く診断します。デバッグの作業時に特に便利なこのIDEは、開発プロセス全体を通じて使用することも、特定の問題の発見に使用することもできます。また、使いやすいコマンドライン・インタフェースも用意されています。
正確な製品仕様定義のためのツールとランタイム
Android応用デバイス開発プラットフォームは、製品仕様に最適なツールおよびランタイムを提供します。開発者は、メンター・グラフィックスやkernel.orgなどのリソース、半導体およびシステム・サプライヤなど、開発中の製品に最適なAndroidプラットフォーム用コードを取得、統合できます。メンター・グラフィックスは、完全にテスト済みで最新の安定したLinuxカーネルをビルド・システムに統合しています。独自のハードウェア用コンフィギュレーション・ファイルを含むカーネル・ソースも組み込まれています。
選択したコードやライセンス・コンプライアンスのオプションを 文書化して提供
オープンソースの最適な組合せの選択を簡素化して実設計に合わせてワークフローを最適化するために、Android応用デバイス開発プラットフォームはパッケージ、バージョン、ライセンス、上流ソース、パッチ、開発および製品用ビルドの依存関係を文書化したソフトウェアBOMを提供します。オープンソース・ライセンス情報の明記やユーザが指定したポリシーに適合したコンプライアンス条項のハイライト、包括的なプロジェクト・ソースを構築してライセンス開示要件に合わせたソース・パッケージの作成、再配布、ライセンス・コンプライアンス、保守および最終製品のカスタマ・サポートのために、ソースとバイナリの照合を追跡、検証するサービスを提供しています(図2)。
まとめ
世界中の組込み開発者が、Androidプラットフォーム上で新しい革新的な機器を開発する大きなチャンスを見い出しています。Androidは元来、携帯電話向けに設計されたものであるため、他のネットワーク対応機器に適用可能にするには、大幅な最適化と拡張が必要となります。メンター・グラフィックスは、スマートフォンを超える用途にAndroidを適用するための投資を行ってきました。Android応用デバイス開発プラットフォームは、開発製品のライフサイクル全般をサポートする完全なAndroid開発環境を提供します。さらに、メンター・グラフィックスが提供する徹底したサービスを活用することで、開発者は高品質なAndroid製品をスケジュール通りに高成長する市場に投入することができます。
ANDROID応用デバイス開発プラットフォームの主要な機能と特長
- カスタム開発および製品環境を構築
- 製品の要件に合わせてコンフィギュレーションをカスタマイズ
- 商用およびオープンソースのコンポーネントを統合
- ボード・ポートおよびカスタム・ドライバを開発、追加
- 製品固有のC/C++ライブラリを開発、追加
- アーキテクチャおよびCPUに最適化されたライブラリ
- ハードウェア固有要件に対応したカスタマイズ可能なHAL
- アプリケーション・フレームワーク:
- 製品固有のクラスを開発、追加、UI、テーマ、アイコンをカスタマイズ
- EclipseベースのグラフィカルIDEを使ったアプリケーション開発、ツール、デバッグ
- アプリケーションSDKおよびデバイス・エミュレータ(Eclipseプラグイン)
- 製品に合わせてエミュレータをカスタマイズ(ハードウェア、動作、スキン)
- カスタム・アプリケーションSDKビルドにより製品固有のAPIをインクルード
- 標準Ubuntuワークステーション・ホスティング(他のホストも利用可能)
- Androidバイオニック・ライブラリ、リンカおよびその他のソフトウェア・インフラストラクチャ
- Dalvik VM、Java Native Interface (JNI)
- アーキテクチャおよびCPUに最適化されたバーチャル・マシン
- 製品固有のJNIルーチンを開発、追加
- ベスト・プラクティスかつ実設計に適したワークフロー・ツール:
- 再現可能なビルド、ソフトウェアBOM、ソース・パッケージング、ライセンス監査、トレーサビリティ
- 複数のビルド・ターゲット:開発、テスト、製品化、製造
- テスト・ユーティリティおよびセットアップ
- ドキュメンテーション(ユーザ・ガイド、テストプランを含む)

