OSGi Alliance(旧称:Open Services Gateway initiative)は、1999年3月に設立された
標準化団体で、
Javaを基盤としたサービスプラットフォームの標準化を推進しています。
OSGiフレームワークの概要
OSGiフレームワークは、
Java/VM環境において、動的なコンポーネントモデルを実現します。アプリケーションやコンポーネントは「バンドル」形式で配布され、リモートからインストール、起動、停止、アンインストールが可能です。
Javaのパッケージやクラス管理も詳細に定義されています。ライフサイクル管理はAPIを通じて行われ、リモートからの管理ポリシーの
ダウンロードにも対応します。サービスレジストリにより、バンドルは新規サービスの追加や既存サービスの削除を自動的に検出し、適切に対応できます。
OSGiの適用範囲と用途
当初はサービスゲートウェイの仕様策定が目的でしたが、その適用範囲は拡大し、現在では
携帯電話からEclipse IDEまで、様々な分野で利用されています。具体的には、
自動車、
ファクトリーオートメーション、ビル管理システム、
携帯情報端末、グリッドコンピューティング、エンターテイメントシステム、
アプリケーションサーバなどに幅広く応用されています。
仕様策定プロセス
OSGiの仕様は、メンバーによるオープンなプロセスで開発され、OSGi Specification Licenseに基づいて配布されます。この
ライセンスにより、配布後の変更も自由に行えます。OSGi Allianceは、メンバー企業向けに認証プログラムを提供しており、認証された
実装が複数存在します。
組織
OSGi Allianceは、
サン・マイクロシステムズ、
IBM、
エリクソンなどによって設立されました。現在では、多様な業種から25社以上の企業が参加しており、各分野に委員会が設置され、それぞれ専門の役員が選出されています。仕様策定は専門のグループによって行われ、エンタープライズ、IoT、中核プラットフォームなどの分野で活動しています。
コミュニティ
OSGiのコミュニティは活発で、モバイル分野では、
ノキア、
モトローラ、ProSystなどが中心となり、新世代
携帯電話向けのサービスプラットフォーム策定を行っています。Eclipseは、IDEプラットフォームの実行環境としてOSGiを採用しており、OSGiバンドル開発のためのツールやプラグインが提供されています。また、Equinox OSGi、Apache Felixなどのフリーソフトウェアも開発されています。
仕様バージョン履歴
OSGiの仕様は、複数回にわたってバージョンアップされています。中核仕様としては、OSGi Release 1(2000年5月)から始まり、最新のOSGi Release 7(2018年4月)まで進化を続けています。モバイル仕様も存在し、2006年9月にOSGi Release 4, Version 4.0.1が公開されています。
関連情報入手先
OSGiに関する情報は、公式ウェブサイトやFAQ、関連フォーラムなどで入手できます。また、ProSystやaQuteなどの企業が提供する情報も参考になります。
関連RFCおよびJava標準
OSGiに関連するRFCや
Java標準として、Service Location Protocol、Sun Jini、JCP JSRなどが挙げられます。これらの標準規格が、OSGiの技術基盤を支えています。
関連標準規格
MHP / OCAP、
Universal Plug and Play (UPnP)などの関連標準規格もOSGiと連携して利用されています。
書籍
OSGiに関する書籍も出版されており、OSGiの理解を深めるための教材として活用できます。
関連項目
Knopflerfish、Apache Felixなどのプロジェクトは、OSGiフレームワークの
実装例として挙げられます。
外部リンク
OSGiの公式ウェブサイト、開発者向けサイト、
Javadocなどの外部リンクが提供されており、詳細な情報を入手することができます。
OSGiは、多様な分野で利用される動的なコンポーネントモデルを提供し、その柔軟性と拡張性から、多くのシステム開発で重要な役割を果たしています。