问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

osgi 是什么?6

发布网友 发布时间:2024-02-20 02:29

我来回答

1个回答

热心网友 时间:2024-03-14 23:23

OSGi规范介绍

第一章 引言
OSGi(Open Service Gateway Initiative)最初的目的就是为各种嵌入式设备提供通用的软件运行平台,即可以屏蔽设备操作系统与硬件区别的中间件平台。PC基本上被 Wintel架构垄断,运行在PC上的应用程序完全可以在另一台PC上运行;但对于其他设备来说就不同,它们的硬件平台可能完全不同,其操作系统也是来自不同厂商,所以任何设备上的应用程序都需要定制,于是就产生了对中间件平台的需求。
OSGi并不是专为家庭网络而制定的,除了住宅网关,像车载电脑等其他移动嵌入式设备也都可以通过OSGi接入Internet,获取不同的应用服务。它为服务供应商、软件供应商、网关开发人员以及设备供应商提供了一个开放、通用的架构,使它们能互动地开发、部署和管理服务。其软件环境基于Sun的 JAVA虚拟机,并不涉及具体的连接协议。对于任何新设备,它都能够灵活地将其纳入现有网络。可以使用OSGi的对象包括各种数字和模拟的机顶盒、服务网关、有线电视电缆调制解调器、消费类电子产品、PC、工业计算机、汽车等。
因为OSGi基于JAVA技术,而JAVA最大的好处就是平台无关性。在不同类型的住宅网关设备上都可以实现OSGi软件。而且OSGi规范可以与各种设备访问标准桥接(如图1所示),比如遵循OSGi的系统可以很好地部署和管理Jini服务,它可以提供Jini设备与服务提供商之间的交互。对于像 HAVi、UPnP等基于非JAVA技术的标准和规范,OSGi也可以提供与它们沟通的桥梁。

第二章 OSGi规范介绍
2.1 OSGi规范的体系结构
在OSGi规范中提供了一个参考的体系架构[1],也基本上体现了OSGi的设计初衷。
OSGi的体系架构是基于这样一个模型的:经营者管理着一个潜在的巨大的服务网络平台。OSGi规范假设这个服务平台是完全被这个经营者控制,并且经营者使用该服务平台去运行来自不同服务提供者提供的服务。然而这只是一个场景,还有其他模型,例如PC机的部署,工业应用(如,移动电话基站是一个管理中心完全控制着各个方面),中间件模型等。OSGi最广泛的应用是在网络化的服务。除了参考模型之外,规范之中还提到了其他的一些模型。请参考OSGi 3.0规范[1]。
2.1.1 OSGi参考体系架构的特点
1. 商业驱动:经营者的观点驱动OSGi的体系架构。
2. 完美:体系架构必须是足够完善和详细的,以致允许开发商生产出健壮的产品。
3. 不受限的:由于经营者所操作的服务平台在性能和网络环境的变化是非常大的。
4. 开放:标准不是为一个具体的系统而设计的,OSGi参考体系架构必须考虑和支持许多不同的场景。
2.1.2 OSGi参考体系架构所涉及到实体
1. 服务平台:一个JAVA虚拟机的实例,一个OSGi框架结构,和运行着的服务包的集合。
2. 服务平台服务器(SPS):驻留一个或多个服务平台的硬件。
3. 运营商:掌控许多服务平台的组织。
4. 服务应用:一套软件包,文档和支撑软件所组合起来的应用,这些应用向终端用户提供服务。
5. 服务用户:获取服务应用服务的用户。
6. 服务提供者:开发服务应用并且通过服务部署管理器部署到服务平台上。
7. 服务部署管理器:部署和部分管理一个或多个服务提供者提供的服务应用。
8. 服务运行支持:支撑软件和硬件,它们并不驻留在服务平台服务器上,但是在运行服务应用时需要它们。
9. 服务集成者:负责确保来自不同服务提供者的服务应用的集成。
10. 服务开发者:开发服务应用。
11. 制造商:制造服务平台服务器
12. 拥有者:服务平台服务器拥有者。
13. 收费提供者:接受帐户信息,并且提供统一的帐单给服务消费者。
14. 网络提供者:提供服务平台的网络链接。
15. 证书授权:管理证书的组织,这些证书被用来鉴别系统,个人和组织。
首先是制造商制造服务平台服务器,拥有者从制造商处购买服务平台服务器,网络提供商提供服务平台服务器和互联网的接入。服务平台的运营商使用网路提供者的接入基础件接入服务平台服务器,同时服务平台经营者控制着一个或多个运行在服务平台服务器的服务平台。另一方面,服务平台经营者许可服务部署管理器去部署服务应用到服务平台上。
其次服务开发者开发服务应用,一个服务应用可能包含多个服务包而这些服务包是真正运行在服务平台上的。服务提供者从服务开发者处得到服务应用并且可能会委托服务运行支撑系统去支撑该服务应用在服务平台上的运行。服务集成者将服务提供者获取的服务应用和支持系统集成起来由服务部署管理器部署到服务平台上。
最后服务消费者订阅服务提供者提供的服务。
更有意思的是这里还有一个服务用户实体,从图中可以看出服务消费者可以包含多个服务用户,服务用户是真正接受服务的实体。也就是说服务消费者是一个虚的实体,多个服务用户可以消费同一个服务消费者订阅的服务。这好比不同的人可以通过同一个电话打电话一样。这无疑提高了OSGi规范灵活性。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
帮帮忙写个英语作文80字的 谢谢 80年山东高考总分 总胆红素25.44(正常3.4-22),直接胆红素7.13(正常0-6.8... ...参考值 总胆红素 19.4 0-23.0 umol/L 直接胆红素 6.4 0-8.0 umol/... 蟹爪兰冬天多久浇水 冬季蟹爪兰浇水间隔需长达多久 蟹爪兰冬天什么时候浇水好 蟹爪兰冬天多久浇一次水 端午节一家人吃饭的说说 端午节跟谁一起过 端午节一家人聚在一起吃饭的说说 端午节是家人团聚吗 抖音优惠券在哪里看? 华为手机是不是免费贴膜呢? 18款速腾感觉方向偏沉 速腾的方向盘为什么比朗逸的重 速腾方向盘很重是什么原因 大众速腾方向盘越来越紧什么原因造成呢 速腾的方向为什么很重 为什么男生都去安和家园? osgi web应用 怎样部署2 深圳酷派大厦写字楼简介有哪些? 快手用的这个铁棒叫什么,我也要去买 opendaylight中的工程编译成功后,./ karaf... TextMate上的bundle是什么意思?谁能具体解释一下... 西南交大2023研究生缩招了吗? 贷款展期影响个人信用吗? 招商银行信用卡有限制还款日吗 沈阳市第一百五十二中学在哪啊~~~ 到芜湖的特快火车是停在东站还是南站?离开芜湖的火车又是在哪里... 如何运行osgi的java代码1 用OSGI框架写的java程序 一般怎么看好一点,内容有点多...1 OSGi框架,大神进! 钻石上去是什么段位 为什么学习OSGi sosgi是什么意思 ​eclipse新建java project 时...2 4S店要求所有的汽车修理工,上班时间将手机上交,合理么,为什么?_百度知... 湾沚车管所周六周日上班吗 糖果乐园大冒险 eclipse运行报出以下错误,求解,谢谢 今天早上六点多我上网查流量和话费,但是都查不到,于是我又发短信查询... 标点怎么转换成英文字母? myeclipse里面如何导入文件啊?3 myEclipse10怎么导入文件1 lexile值多少合适做英语阅读 如何辨别甲类功放,乙类功放,甲乙类功放??42 山水AU一777DG是甲类功放吗。1 索尼m7拍绿色偏黄,应该如何设置相机才不会这样? 四川省阿坝州松潘县房价明年会降吗 宝宝快满月了才长了一斤多,是因为女孩的原因吗? 新水管和之前老化的水管容不容易接起来