II-26-3. J2MEを利用したJavaによる組み込み開発

組み込み向けのJava開発環境であるJava ME (Java Platform, Micro Edition)の歴史、概要と構成について解説する。またJava MEを用いた組み込みアプリケーション開発の事例を紹介し、その効果を示す。

【学習の要点】

* 組み込みJavaの開発環境であるJava ME (Java Platform, Micro Edition)はJavaの適用対象を小型デバイス、モバイル機器に絞った仕様であり、2000年に発表された(当時の名称はJ2ME)。

* Java MEを用いた組み込みアプリケーション開発の事例は増加しており、携帯電話、TV、自動車の機器などに用いられている。

図II-26-3. Java MEの年譜。プラットフォームの動向を丸囲みにより示す。

【解説】

1) Java ME (Java Platform, Micro Edition)の概要

* Java ME (Java Platform, Micro Edition)は一般消費者向け商品や組み込み機器などの要求に適したプラットフォームを作る技術と仕様からなる。

* Java MEの歴史

- 組み込みJavaの開発環境であるJ2ME (Java2 Platform, Micro Edition)はJavaの適用対象を小型デバイス、モバイル機器に絞った仕様であり、2000年に発表された。

- この時、JavaはJ2MEを含めてJ2SE (Java2 Standard Edition), J2EE (Java2 Enterprise Edition)の3つに分割された。J2SEは通常のPC環境用、J2EEはサーバサイド用とされた。

- PDAなどの携帯端末で使われたPersonal Javaや組み込み機器用のEmbedded JavaはJ2MEに組み込まれた。

- JavaOne 2005でJava MEと改称された後も、JSR (Java Specification Requests)という形で様々な拡張の提案がなされている。

* Java MEの構成

- Java MEは、Java SEから必要な機能を選択して追加している。

- Java MEにより携帯電話、ICカード、組み込み機器などを統一的に扱うためには、機器間のスペックの差を吸収する仕組みが必要であったため、コンフィギュレーションとプロファイルという仕組みが用意された。

- コンフィギュレーションはCPU、メモリ、ストレージなどの差異により分類されたVMとクラスライブラリ群である。

- プロファイルは特定のデバイス向けのクラスライブラリのAPI群である。

2) Java MEを用いた組み込みアプリケーション開発の事例

* 携帯電話

- Sun Java Wireless Toolkit for CLDC(Sun Microsystems)などのアプリケーション開発支援環境が提供されている。(CLDCはII-26-4参照)

- 国内で流通する大多数の携帯電話がサポートしているが、プロファイルは各社で異なる。

* ICカード

- JavaCard (Sun Microsystems)というJava VMの載った接触型ICカードのプラットフォームが提供されている。

- Javaのライブラリ群の中から、JavaCard用途のAPIを選択して提供されている。

* 自動車車載システム

- リアルタイム要求の比較的厳しくない、ダッシュボード表示やクルーズコントロールなどにJava MEが特に利用される。

OSS Course Naviのコンテンツは IPA OSS モデルカリキュラムを基としています。