开放服务网关倡议(OSGi,Open Service Gateway Initiative)有双重含义。一方面它指OSGi Alliance组织;另一方面指该组织制定的一个基于Java语言的服务(业务)规范——OSGi服务平台(Service Platform)。
OSGi Alliance是一个由Sun Microsystems、IBM、爱立信等于1999年3月成立的开放的标准化组织,最初名为Connected Alliance。该组织及其标准原本主要目的在于使服务提供商通过住宅网关,为各种家庭智能设备提供各种服务。目前该平台逐渐成为一个为室内、交通工具、移动电话和其他环境下的所有类型的网络设备的应用程序和服务进行传递和远程管理的开放式服务平台。
该规范和核心部分是一个框架,其中定义了应用程序的生命周期模式和服务注册。基于这个框架定义了大量的OSGi服务:日志、配置管理、偏好,HTTP(运行servlet)、XML分析、设备访问、软件包管理、许可管理、星级、用户管理、IO连接、连线管理、Jini和UPnP。
这个框架实现了一个优雅、完整和动态的组件模型。应用程序(称为bundle)无需重新引导可以被远程安装、启动、升级和卸载(其中Java包/类的管理被详细定义)。API中还定义了运行远程下载管理政策的生命周期管理。服务注册允许bundles去检测新服务和取消的服务,然后相应配合。
OSGi原先关注于服务网关,其实可用于多个方面。现在OSGi规范已经用于从移动电话到开源的Eclipse(其中包括了与IBM的OSGi框架SMF兼容的开源版本)。OSGi服务平台的应用包括:服务网关、汽车、移动电话、工业自动化、建筑物自动化、PDA 网格计算、娱乐(如iPronto)、和IDE。
OSGi规范是由成员通过公开的程序开发,对公众免费而且没有许可证限制。但是OSGi Alliance的兼容性程序只对成员开放,目前有12个兼容的实现。
2003年Eclipse选择OSGi作为其插件的底层运行时架构。[http://www.eclipse.org/equinox/ Equinox] project对该理念进行了实验,2004年6月在Eclipse3 R3中发布。ProSyst是面向OSGi开发者的Eclipse插件。
2003年10月,诺基亚、摩托罗拉,ProSyst和其他OSGi成员组建了Mobile Expert Group(MEG)为下一代智能手机规范业务平台,做为对MIDP和CDC的补充。
版本
- R1 2000年5月
- R2 2001年10月
- R3 2003年3月
- R4 2005年10月
- R5 2013年12月
- R6 2015年6月
参见
- JINI
- HomePlug
- X10 (通訊協定)
- CEBus
- 蓝牙
- Wi-Fi
- LonWorks
- CORBA
- 服务定位协议
- Salutation
参考
- OSGi Service Platform, Release 3, IOS Press, ISBN 1-58603-311-5
外部链接
- [https://web.archive.org/web/20130613171332/http://www.osgi.com.cn/ OSGI中文社区] --促进Java模块化开发技术传播
- [http://www.osgi.org/ OSGi官方网站]——可下载标准规范,提供各种信息
*
- [http://www.osgiworldcongress.com/ OSGi World Congress] - 2004 congress in October in Barcelona
- [http://www.prosyst.com/ ProSyst Software GmbH] - Leading OSGi Software Provider for Remote Management and Service Delivery
- [http://www.aqute.biz/ aQute: OSGi Info] - Information about OSGi and access to seminars
- [http://oscar.objectweb.org/ Oscar: An OSGi framework implementation] - Open Source OSGi framework implementation under BSD license
- [http://oscar-osgi.sourceforge.net/ Oscar Bundle Repository (OBR)] - A community-oriented bundle repository and incubator for OSGi bundle developers
- [http://www.knopflerfish.org/ Knopflerfish OSGi] Open Source OSGi implementation under BSD license
- [http://oxygen.sourceforge.net/ Oxygen Project]
- [http://gravity.sourceforge.net/servicebinder ServiceBinder] - Automated Service Dependency Management for the OSGi services platform
- [https://web.archive.org/web/20050514041232/http://www.osgi.org/news_events/documents/AutoManageServiceDependencies_byMOffermans.pdf Dependency Manager] - Automatically managing service dependencies in OSGi
- [http://www.makewave.com/ Makewave] - Leading OSGi Technology Provider, maintains the open source OSGi implementation [http://www.knopflerfish.org/ Knopflerfish]
评论 (0)