140 likes | 345 Views
OSGi について. 2005 年 5 月 17 日 02K0122 田畑智洋 m02k0122@k.hosei.ac.jp. 目次?. OSGi とは OSGi フレームワーク バンドル・ライフサイクル OSGi フレームワーク「 Oscar 」 おまけスライド. OSGi とは. Open Service Gateway Initiative の略 Open Service Gateway ( OSG )の規格統一に向けて動いている団体。 1999 年設立 1 の OSGi が規格統一に向けて作成をしている 仕様そのもの。
E N D
OSGiについて 2005年5月17日 02K0122 田畑智洋 m02k0122@k.hosei.ac.jp
目次? • OSGiとは • OSGiフレームワーク • バンドル・ライフサイクル • OSGiフレームワーク「Oscar」 • おまけスライド
OSGi とは Open Service Gateway Initiativeの略 • Open Service Gateway(OSG)の規格統一に向けて動いている団体。 1999年設立 • 1のOSGiが規格統一に向けて作成をしている 仕様そのもの。 以降OSGiというときは、2を指すことにします もしかしたら、「おすぎ」と言うかもしれません
OSGi フレームワーク • 家電製品etcをインターネットに接続し、 パソコンや機器間で相互にサービスを提供する。 • 最小動作単位を「バンドル」と呼ぶ 標準バンドル群 各種バンドル OSGiフレームワーク JavaVM
OSGi フレームワーク 動作例 インターネット つながったよ 通信規格(古いヤツ) 通信規格(新しいヤツ) バンドル1 バンドル2のインストール バンドル2 準備完了 OSGiフレームワーク JavaVM 通信端末など
バンドルのライフサイクル • 開発者によって作成・インストールされてから 削除されるまでの一連のライフサイクルが定義 されている。 OSGiへの インストール 更新 Installed start() Stop() Activated Deactivated Start() OSGiからの削除 Uninstalled
バンドル間の連携 • 作成した複数のバンドルを、OSGiフレームワーク 上のサービスとして連携することもできる。 バンドルA サービスの登録 情報の 提供 OSGi フレームワーク サービスの検索・利用 バンドルB
以上を踏まえて、実際にデモンストレーションして以上を踏まえて、実際にデモンストレーションして みたいと思います。 使用するOSGiフレームワーク:Oscar 1.0.5 (http://oscar.objectweb.org/よりダウンロードできます) 辞書検索(?)サービス http://oscar-osgi.sourceforge.net/tutorial/の Example2とExample3を使用します。
辞書検索サービス • Example2 • 辞書検索のサービスを提供する • boolean checkWord(String)を備える • Example3 • 辞書検索を実際に行うバンドル • Example2のバンドルを使用して、辞書に登録されている語を入力した場合に”Correct”と表示する(だけ) • Example2のcheckWord(String)を使用する
OSGi フレームワーク(おさらい) • 標準バンドル群:OscarのAPI、OscarのGUI機能のバンドル etc • 各種バンドル:辞書検索バンドル(後からインストールしたもの) 標準バンドル群 各種バンドル Oscar(OSGiフレームワーク本体) JavaVM
OSGiフレームワーク 標準サービス • OSGiでは、さまざまなサービスが標準で用意 されている リリース1から提供されている代表的な標準サービス • デバイスアクセス • 新しいデバイスがOSGi環境に接続された場合に、必要となるドライバを 探し出し、ドライバ・バンドルを自動的にダウンロードする。 • HTTPサービス • HTTP1.1のサーバ機能を提供する。バンドル追加で、サーブレット環境の構築もできる。 • ログサービス • エラーなどのログを出力したり、サービスに通知したりする機能。
OSGiに何ができるか!?(モバイル編) • 新しいデバイスや通信規格が導入されたとき、 そのドライバやアプリケーションを自動的に ダウンロード&インストールをすることができる。 そのために OSGiアライアンスは、J2ME用に開発できる コンパクトなフレームワークAPIを提供している!
参考文献 • OSGi3.0仕様書 • OSGi WhitePaper (以上2つ:http://www.osgi.org/より) • JAVAモバイルアプリケーション 立川敬行 著 ソフト・リサーチ・センター • love unstable http://kumiki.c.u-tokyo.ac.jp/~ichiyama/cgi-bin/hiki/OSGi.html (東大の博士課程の方の博士論文のwikiみたいです)