メディア
特集
» 2009年01月01日 00時00分 公開

組み込み分野に浸透進むオープンソースソフトウエア(2/2 ページ)

[Warren Webb,EDN]
前のページへ 1|2       

代表的なオープンソースソフト

 ここでは、代表的なオープンソースソフトをいくつかピックアップして紹介しておく。

 一連のGNUコンパイラ群およびGNUデバッガのような開発ツールは、ほとんどのオープンソースソフトのパッケージで利用できる。これらのツールはソースコードを改変する際に便利なものだが、商用開発環境のような便利な機能は備えていない。商用OSに付属するような使い易い統合開発環境(IDE:Integrated Development Environment)を実現すべく開発されたのが、オープンソースのグラフィカルIDEプラットフォーム「Eclipse」である。これは、複数のツールベンダーやオープンソースコミュニティによって開発されたいくつものソフトウエアを統合したものとなっている。

 Eclipseはランタイムカーネルを除くすべての機能がプラグイン方式で構成されている。そのため、さまざまな機能/ツールをプラグインとして組み込むことで容易にカスタマイズできる。同プラットフォームを管理しているEclipse Foundationは、ツール類の改変/追加を容易化するために、Eclipseのアップデート版はパッケージ化して提供し、年に1回リリースすることにした。2008年の年次リリース活動(開発コード名がGanymedeのEclipse 3.4に対応する)では23のプロジェクトが取り上げられ、その成果として、JavaおよびJavaScript用の新規開発環境、モデリングツール、サービス指向アーキテクチャ(SOA)設計ツール、インストール/更新用ツールなどがリリースされた。各ツールは同ファウンデーションのウェブサイトからダウンロードできる。

 LinuxはオープンソースOSとして最も有名なものである。ただし、そのままでは組み込みシステム用としては適切でない場合がある。Linuxは汎用的なOSであり、ハードウエアの要求に適合させるには、コードベースのかなりの部分を改変する必要がある。ほとんどのLinuxディストリビューションは各種のアーキテクチャやプロトコルをサポートするが、最小限の条件として32ビットのプロセッサ、2MバイトのRAM、1MバイトのROMを必要とする。

 こうしたリソース条件を緩和する目的で、Embedded Linux/Microcontroller Projectは「μClinux」を開発した。これはMMU(メモリー管理ユニット)を持たないマイクロコントローラ向けにLinuxカーネルを改変したものである。μClinuxのカーネルは、英ARM社、米MIPS Technologies社、米Freescale Semiconductor社などのマイクロコントローラのほか、米Analog Devices社の「BlackFin」、米Intel社の「i960」、ルネサス テクノロジの「H8」など、各種マイクロコントローラをサポートする。μClinuxのウェブサイトでは、同OSがサポートするプロセッサのリスト、詳細なチュートリアル、ソースコードが公開されている。

 NetBSDをはじめとするいくつかのオープンソースOSも、組み込みシステム開発メーカーに利用されている。NetBSDはUNIXから派生したOSであるBSDをオープンソース化したものだ。セキュリティ機能を付加したり、小型化を図ったりされている。NetBSDのカーネルの要件は、プロセッサがMMUを有し、標準的なLinuxを利用する場合と同様なリソースが使用できることである。なお、NetBSDに適用されているBSDライセンスは、GNU GPLよりも自由度が高く、自社で開発したコードを公開する必要がない。

 組み込みシステムで重要となることの1つは、リアルタイム性の保証である。Linuxの最新バージョンには、マルチタスクアプリケーションにおけるタスク切り替えを高速化するためのプロセススケジューリングアルゴリズムが組み込まれている。しかし、それでもリアルタイム性の必要な組み込み用途ではOSとして使うことはできないだろう。リアルタイム性を要するとともに、使用可能なリソースに限りがあるようなケースでは、「eCos(Embedded Configurable Operating System)」がより適切な選択肢となる。

 eCosはもともとは米Red Hat社に買収された米Cygnus Solutions社が開発していたもので、現在はロイヤルティフリーのオープンソースソフトとなっている。数百Kバイトのメモリーを備える機器をターゲットとし、ARM社、ルネサス、Freescale社、MIPS社、NECなどさまざまなメーカーのプロセッサや、PowerPCプロセッサとともに使用できる。

 eCosのライセンス(eCos License)はGNU GPLとは少し異なっており、アプリケーションコードの公開は要求されない。その一方で、小規模な改変は禁止されており、新システムとして完成させることを要求している。完成後の新システムは、別のライセンスを適用して配布されることになる。

モバイルプラットフォームの乱立

画面1 AndroidSDKの操作画面 画面1 Android SDKの操作画面 この開発キットには、Javaアプリケーションを開発するために必要なツールやAPIなどが含まれている。

 オープンソースソフトの分野における最もホットな話題は、スマートホンやモバイルインターネット機器(MID:Mobile Internet Devices)などを対象としたOS(プラットフォーム)の開発競争であろう。

■Android

 2007年終盤に、米Google社を中心とした30以上の企業がソフトウエアプラットフォーム「Android」の開発プランを発表した。Androidはモバイル機器用のオープンソースソフト群であり、LinuxベースのOSや各種ミドルウエア、主要なアプリケーションソフトウエア(のフレームワーク)が含まれている。パッケージのソースコードはOpen Handset Allianceが管理している。すでに、米T-Mobile USA社がAndroidを利用した初の携帯電話機「T-Mobile G1」を発売している。

 ソフトウエア開発キット「Android Software Development Kit(SDK)」およびデバイスエミュレータは、http://code.google.com/android/download.htmlからダウンロードできる(画面1)。

■LiMo Platform

 LiMo Foundationは、Androidと競合するスマートホン用オープンソースプラットフォーム「LiMo Platform」を提供している。同プラットフォームの目的は、「真にオープンで、ハードウエア依存性のないLinuxベースのモバイル機器用OSを提供すること」だと位置付けられている。同プラットフォームはすでに公開されているが、十分なマルチメディア対応とポータブル化の作業は2009年に延期された。

 LiMo Platformは、機器メーカー向けのミドルウエアとアプリケーション開発者向けのAPI(Application Programming Interfaces)に重点を置いて開発されている(図1)。パナソニック、米Motorola社、NECなど、いくつかの端末メーカーがLiMo Platformを後押ししているほか、LiPS(Linux Phone Standards) Forumと携帯電話事業者の米Verizon Communications社がLiMo Foundationへの協力を表明している。

 なお、LiMo Platformのコードベースにアクセスするには、加盟料を支払ってLiMo Foundationのメンバーになる必要がある。

図1 LiMoPlatformのアーキテクチャ 図1 LiMo Platformのアーキテクチャ 次世代モバイル機器をターゲットとしたLiMo Platfromのソフトウエアアーキテクチャを表している。LiMo Foundationは、ハードウエアに依存しないオープンソースソフトの開発を進めると宣言している。

■Symbianプラットフォーム

 そのほかの大きな動きとして、フィンランドNokia社や英Sony Ericsson Mobile Communications社、Motorola社など複数の携帯電話機メーカーが「Symbian OS」ベースの各社独自仕様を1つのオープンソースプラットフォームとして統合する計画を発表している。この発表はAndroid、LiMo Platformの両陣営にとっては衝撃となった。

 Symbian OSは、米国では広く使用されているわけではないが、世界的に見ればかなり広く普及していると言える。2008年6月にはSymbian Foundationの設立が発表され、米AT&T社、韓国Samsung Electronics社、米Texas Instruments社、スイスSTMicroelectronics社、NTTドコモらが加盟することになっている。同ファウンデーションは、「オープンソースソフトをベースとした今後のモバイルシステムを巡る競争に立ち向かう」と宣言している。


 本稿で述べたとおり、組み込み機器開発におけるオープンソースソフトの重要性は着々と高まりつつある。実際、インターネット上には無償でダウンロード可能な膨大な数のソフトウエアが存在し、あらゆるタイプの組み込み機器開発に利用できるものが見つけられる状況にある。オープンソースソフトが組み込みシステム業界の土台になる日は、遠い未来の話ではないかもしれない。

前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.