OSGi (Open Service Gateway Initiative) Reporter:sz-han wang
OUTLINE OSGi Oscar
OSGi架構 OSGi 架構主要由三種元件所組成: Framework、Bundle 和Service。Framework 架構在 Java VM(Java Virtual Machine)上,Bundle 則是執行於 Framework 上的應用程式,而 Service 是 Bundle 所提供(Export)或所需(Import)的介面服務。
OSGi架構圖
OSGi 架構
services in OSGi Framework
OSGi bundle Bundle 是一個Java Archive(JAR)檔案,該 JAR 檔包含 Java類別(Class)、啓動類別(Activator Class)、清單文件檔(Manifest Header)和一些資源檔(如HTML 網頁或JPG 圖檔等)。
OSGi bundle
Bundle 生命週期狀態圖
Class Loading概念圖
Service Registry
OSGi的優點 Platform Independent Application Independent Secure Multiple Services Multiple Local Network Technologies Multiple Device Access Technologies Co-existence with Other Standards
An UPnP/HAVI software bridge
OBR (OSCAR Bundle Repository) 提供一個容器並且告知bundle能被部署到哪一個OSGi的Framework上。 增加bundle的可見度以及群組性。
OBR示意圖
Bundle 互相合作圖
Oscar Oscar is an open source implementation of the Open Services Gateway Initiative (OSGi) framework specification; the goal is to provide a completely compliant implementation of the OSGi framework specification. OSCAR可以運用它的plug-in或是擴充(extension)機制,可以很容易的被嵌入到其他的專案上。 動態的組裝應用程式(Dynamic assembly of applications)
Oscar GUI Shell ...\Oscar\lib\system.properties ..\.oscar\test07
Oscar GUI Shell
Oscar GUI Shell
Simple
Simple
Simple
Oscar GUI Shell
mp3player
OSGi UPnP
UPnP device
OSGi UPnP Device Tester
Example MPEG7-search