(株)コンピューテックスのトップページへ
メールサービス登録 サイトマップ サイト内検索 English site
     
 
 
 HOME > 開発ソリューション > Android™ 開発ソリューション
 
A4用紙プリントページはこちら  
Android™は、Google社が提供するモバイル機器向けのOSです。最新のGUIをオープンソースでターゲットに実装できるため、モバイル機器以外での活用にも注目が高まっています。Androidの魅力の一つにJavaでアプリケーションを開発する環境が整備されていることが挙げられます。パソコン上のエミュレータと統合開発環境のEclipseを使用することで、誰でも気軽にJavaアプリケーションを開発することができます。Eclipseを使ったJavaの開発環境は強力ですが、Javaという言語だけでは処理しきれない問題もあります。例えば、処理スピードや、独自デバイスを直接制御することができないなどの問題が挙げられます。これらの問題を解決するにはJava以外での処理が必要になります。Androidではこのような問題に答えるために、NDKやJNIと呼ばれるJavaからC言語のライブラリをコールするインターフェースが用意されています。JNIを使用すればC言語の処理ルーチンをコールすることができますので、スピードが要求される処理やデバイスの制御をC言語で記述し、Javaで書かれたメインプログラムからそのルーチンを呼び出すということができます。
しかし、ここにはEclipseでJNIからC言語のデバッグをシームレスに行うことができないという更なる問題があります。gdbを使用すればデバッグできなくはないですが、スレッドのデバッグができない、強制ブレークができない、プログラムの先頭からデバッグできない、など初級者にはハードルの高い問題が存在します。また、gdbを使用した場合、コマンド・レベルでのデバッグが強いられますので、gdbのコマンドを理解する必要があります。
このような問題をクリアするため、Linuxのアプリケーションデバッガ「C-Shark」をJNIのアプリケーションデバッグに対応させることに成功しました。この機能を使用すれば、スレッドのデバッグはもとより、強制ブレーク対応やJNIで呼び出されるC言語アプリケーションの先頭からデバッグすることができます。
Androidといえば最新のテクノロジーで動作しているように思われがちですが、そのカーネルにはLinuxをベースにカスタマイズされたものが採用されています。したがって、自社ターゲットにAndroidを搭載するためにはLinuxのポーティングの技術が必要ですし、ドライバ開発にもLinuxの知識が必要です。アプリケーションの開発にはEclipseやC-Sharkで十分ですが、カーネルのポーティングや、ドライバ開発にはICEが必須となります。
当社のICEは、Linuxのデバッグツールとして多くの実績を積んできていますので、Androidカーネルのポーティング、ドライバ開発に威力を発揮します。

カーネル〜ドライバ〜アプリケーション・デバッグ

Androidカーネルのポーティングやドライバのデバッグは以下の製品で可能です。

アプリケーション専用デバッガ

Android NDKのC言語プログラムのデバッグは以下の製品で可能です。

※PALMiCEの機種の違いについてはこちらをクリックしてください
PALMiCEの違いについて

ARMコアのデバッグ・ツールとしては「PALMiCE2H ARM」、「PALMiCE3 ARM」、「PALMiCE3 CM3」の3つの機種を用途に応じて用意しています。それぞれの機種の違いについて説明します。

  • PALMiCE2H ARMはPALMiCEシリーズの中で最上位モデルの機種です。大容量トレース・メモリを搭載し、数秒間(数億〜数十億命令)のトレースが可能です。その機能を生かし、トレースバック機能やパフォーマンス測定、関数遷移表示などの機能を搭載した、大規模プログラム開発向けの製品です。

  • PALMiCE3 ARMはトレースを取ることができませんが、小型で電源レスという特長があります。また、CortexシリーズではSWVの機能を使ったプロファイラやデータ・ウォッチャーなどの機能を搭載しています。

  • PALMiCE3 CM3はPALMiCE3 ARMの機能を踏襲したCortex-M3の専用機です。

■機能比較表
機能 PALMiCE2H ARM PALMiCE3 ARM PALMiCE3 CM3
対応コア ARM7/9/11
Cortex-M3/M4
Cortex-A8
Cortex-A9 MPCore
Cortex-R4
ARM7/9/11
Cortex-M3/M4
Cortex-A8
Cortex-A9 MPCore
Cortex-R4
Cortex-M3
ETMトレース あり なし なし
トレースバック機能 あり なし なし
パフォーマンス測定(ETM) あり なし なし
プロファイラ機能(SWV) あり あり あり
データ・ウォッチャー あり あり あり
電源 必要 不要 不要
ターゲットI/F JTAG/SWD、ETM JTAG/SWD JTAG/SWD


 連絡先:営業部
 TEL:03-5753-9911
 E-mail:sales@computex.co.jp