- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
osgi规范中文版
OSGi规范中文版翻译:陈贞宝zhenbao@
OSGi
OSGi
OOSSGGii框架概览
1
1
11简介
OSGi联盟成立于1999年3月。他的任务是为托管服务从网络到本地网络和设备传输
创建开放的规范。OSGi组织是下一代家庭、汽车、移动电话、桌面系统、移动办公和其它环
境的互联网服务的最主要的标准。
OSGi服务平台规范为服务提供商、开发人员、软件提供商、网关提供了一个开放的、
通用体系结构,以协调合作方式来开发、部署和管理服务。它的灵活性和服务的托管部署使得
各种智能设备作为一个整体。OSGi规范面向机器顶盒、服务网关、电缆网卡、电子消费品、
PC、工业计算机、汽车、移动电话等。实现OSGi规范的设备可以通过网络提供服务。
这是OSGi服务平台规范的第四版本,由OSGi成员提供。OSGi R4将大部分API扩展
到新的应用领域。对已有API的更改将保留向前兼容,因此使用前一版本开发的应用系统可以
不做任何改动运行在R4框架。如果需要的话,内建的版本管理机制允许新的Bundle运行在旧
的框架。
1.1OSGi
1.1OSGi
11..11OOSSGGii框架概述
Framework是OSGi规范的核心。它提供了一个通用的、安全的和可扩管的Java框
架,这个框架支持可动态部署和下载的应用程序Bundle。
OSGi兼容设置可以下载和安装OSGiBundle,并且可以在无需使用它们时删除。这个
框架以一种动态和可升级的方式在一个OSGi环境中管理Bundle的安装和更新。为达到这个目
的,它细致的管理了Bundle和服务间的依赖关系。
框架为Bundle开发人员提供了利用Java平台独立和动态代码加载需要的资源,使得能
够更加容易在小内存的设备上开发服务且能够大规模部署。
框架的功能被分成以下层次:安全层、模块层、生命周期层、服务层和实际的服务。
如下图所示。
西安尤埃信息技术有限公司
1 125
第 页共 页
OSGi规范中文版翻译:陈贞宝zhenbao@
安全层基于Java2安全,但添加了大量的限制并补充了了Java留下的标准。他定义了
一个安全包的格式,同时定义了运行时与Java2安全层的交互方式。
模块层为Java定义了模块化模型。他克服了Java部署模型的一些缺点。模块化层为
Bundle间的Java包共享或屏蔽共享提供了严格的规则。模块层可以独立于生命周期层和服务
层使用。生命周期层提供了管理模块层Bundle的API,而服务层提供了Bundle间的通讯模
型。
生命周期层提供了Bundle的生命周期管理API。这个API为Bundle提供了运行时模
型。它定义了Bundle如何被启动和停止,也定义了如何安装、更新和卸载。此外,它提供了
一个完善的事件API,运行一个管理Bundle来控制服务平台的操作。生命周期层依赖于模块
层,但可以不依赖安全层。
服务层为JavaBundle开发人员提供了一个动态的、简单的和一致的编程模型,它通过
将服务规范和服务实现解耦来简化了服务Bundle的开发和部署。这个模型允许Bundle开发人
员来使用服务接口规范绑定到服务。服务特定实现的选择、特定需求的优化或指定的服务提供
商,可以延期到运行时决定。
一个一致的编程模型帮助Bundle开发人员处理很多不同任务的伸缩性,这是关键的,
因为Framework是想运行在各种设备,它们有不同的硬件特征,这将影响一个服务平台的各个
方面。一致的接口确保软件组件可以被混合、匹配并仍是一个稳定的系统。
Framework允许Bundle在运行时通过Framework的服务注册表选择一个合适的实现。
Bundle将根据当前设备的功能注册新的服务、接收服务状态通知或查询已有的服务。
Framework这方面功能使得一个安装后的Bundle在部署之后可以被扩展:为新的功能安装新
的Bundle或在不要求重新系统下更改和更新已有的Bundle
文档评论(0)