欢迎大家赞助一杯啤酒🍺 我们准备了下酒菜:Formal mathematics/Isabelle/ML, Formal verification/Coq/ACL2, C++/F#/Lisp
OSGi
(→Links) |
|||
第1行: | 第1行: | ||
[[Image:OSGi.png|right]] | [[Image:OSGi.png|right]] | ||
+ | {{SeeWikipedia}} | ||
+ | |||
OSGi - The Dynamic Module System for Java | OSGi - The Dynamic Module System for Java | ||
2010年9月16日 (四) 05:50的版本
您可以在Wikipedia上了解到此条目的英文信息 OSGi Thanks, Wikipedia. |
OSGi - The Dynamic Module System for Java
目录 |
简介
OSGi规范为网络服务定义了一个标准的、面向组件的计算环境。将OSGI服务平台添加到一个网络设备中,可以为其增加在网络的任何地方管理组件的生命周期的能力。软件组件可以从运行中被安装、升级或者移除而不需要中断设备的操作。软件组件可以动态的发现和使用其他库或者应用程序。通过这个平台,软件组件可以作为商品在柜台中出售以及在家里开发。OSGi联盟已经开发出很多标准组件接口,从普通的功能如:HTTP server、configuration、 logging、security、user administration、XML等等很多。一致的插件机制可以使这些组件满足不同买主的不同需求。
软件组件架构致力于一个软件开发中越来越大的问题:大量的基础配置需要开发和维护。标准化的OSGI组件架构显然可以简化这个配置过程。
框架
OSGi规范的核心组件是OSGi框架。该框架为应用程序(被成为bundles)提供一个标准化的环境。这个框架被分为以下几个层次:
- L0: 执行环境
- L1: 组件模块
- L2: 组件生命周期管理
- L3: 服务注册
另外,还有一个安全机制深深的缠绕在所有的层中。
The OSGi R4 Core Framework services include the following:
- Package Admin Service Specification
- URL Handlers Service Specification
- Start Level Service Specification
- Conditional Permission Admin Specification
- Permission Admin Service Specification
Oscar Bundle Repository is an incubator and repository for OSGi bundles.
开源实现
- Spring Dynamic Modules
- Eclipse Equinox - http://www.eclipse.org/equinox/
- Apache Felix - http://incubator.apache.org/felix/
- Knopflerfish - http://www.knopflerfish.org/
- ServiceTango - http://servicetango.sourceforge.net/
- Oscar - http://oscar.objectweb.org/
应用
- IBM、BEA和JBoss应用服务器采用OSGi
- BMW汽车的应用控制系统采用OSGI作为其底层架构, 这套系统主要用来控制汽车上的音箱、灯光等等设备,总共由1000多个Bundle构成,但BMW汽车的应用控制系统启动时间却只需要3.5秒
Links
<discussion>characters_max=300</discussion>