PR

組み込み開発を支えるJava技術

2010年8月4日(水)
一瀬 成広

ここ数年、携帯電話だけでなく、あらゆる組み込みシステムにおいて、Javaの採用が進んでいます。例えば、すべてのBlu-ray Discプレーヤには、標準で組み込みJavaが搭載されています。米GoogleのAndroid OSも、Javaの技術を取り入れています。

本連載では、組み込みシステムからみたJavaのメリットと仕組みについて、現在注目されているJava技術であるOSGiを絡めて説明します。

Javaを組み込み開発に採用するメリット

Javaというと、「動作が遅く、メモリーをたくさん使うため、組み込みでは使えない」という声を、今でもよく聞きます。ある意味においては、この説は間違ってはいません。例えば、リソースが乏しくてリアルタイム性が重視される用途には、向いていません。

しかし、NTTドコモがJava搭載の携帯電話を出荷したのは、2001年のことです。それから10年が経過しています。CPU性能は大きく向上し、メモリー搭載量も大幅に増えています。今では、情報家電、車載機器、OA(Office Automation)機器、産業機器など、各種の分野において、当時の携帯電話をしのぐ性能を持った機器が、当たり前のように使われています。

組み込みJava自体も、ガベージ・コレクションの改善やJIT(Just In Time)コンパイラの導入などにより、性能が確実に向上しています。そうです、Java VM(Java仮想マシン)に関する性能面での問題は、すでに過去のものになりつつあるのです。

しかし、性能の問題が解消されたといっても、それだけでJavaの採用が進むわけではありません。大前提として、Javaそのものに、組み込みシステムに採用されるだけの大きな魅力があるのです。魅力とは、Javaが仮想マシン(VM)上でアプリケーションを動作させるために備えている、以下の2つの特長です。

  1. アプリケーションが任意のメモリー空間に自由にアクセスできないため、システムとして高いセキュリティを保つことができる
  2. ハードウエア構成やOSが異なる複数の機器の上で、1つのアプリケーションをそのまま動作させることができる

図1: Javaの特長

Javaが備える2つの特長は、第三者が開発したアプリケーションを製品出荷後に追加することを前提とした機器にとって、特に有益です。そうです、まさに携帯電話のような機器にとって有益です。米GoogleのAndroid OSにも、Dalvik VMと呼ぶ、Java技術を基にしたVMが採用されていますが、これも、Javaが備える2つの特長を考慮に入れた上での選択です。

これ以外のケースでも、例えば、複雑なアプリケーションを動作させる機器において、Javaは有益です。もともとJavaは、ガベージ・コレクションに代表されるように、生産性を考慮して設計された言語です。また、プラットフォームに依存しないという特長は、作成したアプリケーションの再利用性を高めます。エンタープライズ(企業情報システム)分野でJavaがよく利用されているのは、この生産性の高さが理由です。

日立ソフトウェアエンジニアリング株式会社

1997年の入社来、組み込みJavaを中心に担当。現在、日立ソフトの組み込みJava製品「SuperJ Engine」組み込み向けOSGi実装「SuperJ Engine Framework」の開発取り纏めを担当している。

連載バックナンバー

Think IT会員サービス無料登録受付中

Think ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。会員登録を済ませてThink ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

他にもこの記事が読まれています