II-26-4. J2MEの様々なコンフィギュレーション

Connected Limited Device Configuration (CLDC)、Connected Device Configration (CDC)といったJava MEのコンフィギュレーションや、Mobile Information Device Profile (MIDP)やFoundation Profile (FP)などのJava MEプロファイルについて説明する。

【学習の要点】

* Java MEのコンフィギュレーション(VMと最小のライブラリ群)とプロファイル(特定のデバイス用のライブラリ群)は組み合わせて使われる。

* Java MEのコンフィギュレーションとして、CLDC(Connected Limited Device Configuration)、CDC (Connected Device Configuration)があり、ハードウェアスペックに見合った基本機能を提供する。

* Java MEプロファイルにはMIDP (Mobile Information Device Profile)やFP (Foundation Profile)などがあり、デバイス固有のAPIなどを提供する。

図II-26-4. Java MEの構成

【解説】

1) Java MEのコンフィギュレーション

* CLDC(Connected Limited Device Configuration)

- Java言語仕様、VM、Javaのコアライブラリ、入出力、ネットワーク、セキュリティ、国際化に関するライブラリを備える。

- 携帯電話など、CPUとメモリ容量、およびネットワーク接続が限定的な端末を対象としている。16ビットか32ビットのCPUを持ち、Java VMとCLDCライブラリ用に128KB以上の不揮発性メモリを持つ環境を想定している。またJavaランタイムと各種オブジェクトのために32KB以上の揮発性メモリを持つことも想定している。

- 後述のMIDletの仕様に従うことで、Javaアプリケーションの動的配信ができる。

* CDC(Connected Device Configuration)

- CLDCよりもリソースの豊富な機器向けのコンフィギュレーションである。提供する機能は、CLDCによって定義されているものを全て含む。ファイルI/O、ネットワーク、セキュリティ、オブジェクトのシリアライゼーションなども含む。

- VMやプログラミングインタフェースなど、Java SE仕様に近い実装が要求される。

- アプリケーションモデルは、スタンドアローン型、Xlet、アプレットがある。

2) Java MEのプロファイル

* MIDP (Mobile Information Device Profile)

- CLDC上のプロファイル仕様である。携帯電話などのデバイスにおいてアプリケーション開発に必要なアーキテクチャとAPI群を追加する。

- 環境条件として、最低限のハードウェアスペックが規定されている。これにはディスプレイ、入力デバイス、メモリ容量、ネットワークが含まれる。

- MIDPには通信機構が与えられ、外部のHTTPサーバとの通信ができるほか、ユーザインタフェース、永続データ領域などに関してAPIが提供されている。

* FP (Foundation Profile)

- CDC上のプロファイル仕様であり、アプリケーション開発に必要なアーキテクチャとAPI群を追加する。ユーザインタフェースは上位プロファイルであるPBP(Personal Basis Profile)やPP(Personal Profile, PBPのスーパーセット)を利用する必要がある。

- サポートするプロトコルは、CDCでサポートする全てのプロトコルに加え、ソケット通信、HTTP通信などがある。

3) MIDlet, Xlet

* MIDletはCLDCコンフィギュレーション上のMIDPプロファイル上で動作するアプリケーションモデルである。XletはPBPおよびPPのプロファイル上で動作するアプリケーションモデルである。Xlet間通信IXC(Inter Xlet Communication)が定義されている。

* アプリケーションの多くはゲームであり、実時間性の要求が高まっている。ガーベッジコレクションの停止時間による影響を排除する必要がある。

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