加载中 ...
首页 > 软件介绍 > 基础软件 正文

嵌入式InforBus

2019-03-24 15:37:40 来源:沈阳软件公司 作者:沈阳软件开发

集成中间件

概述目前类似CORBA和J2EE的中间件虽然提高了分布式应用的灵活性、可扩展性、可维护性以及可重用性等特点,但是这些中间件产品的体系结构并不能够很好的满足实时任务的应用需求。因此OMG组织针对CORBA进行了实时特性的扩展,提出了Real-Time CORBA规范。多数的实时应用都运行在嵌入式设备上,众所周知,嵌入式设备是一个资源受限的计算环境。对于嵌入式设备来说,CORBA所占用的内存和CPU资源都显得过于庞大。因此,OMG组织对传统CORBA的功能进行了裁减,并提出了MinimumCORBA规范。InforBus(Emb)实现了OMG组织的Real-Time CORBA规范和Minimum CORBA规范,同时力争使用最小的系统开销,带来最佳的系统性能。组成InforBus(Emb)的核心部件是ORB,即所谓的“软总线”。它包括了确定和定位对象,进行连接管理和收发数据所必须的所有通讯设施。ORB的基本任务是把请求从客户方传送到被激活的对象实现中。下面是ORB的基本结构框架:

图 ORB体系结构

当客户应用要将请求通过ORB发给对象实现时,运行过程如下:1. 客户通过某种方式找到对象实现的对象引用(IOR)。2沈阳软件定制

<a href=http://www.hvihi.com target=_blank class=infotextkey>沈阳<a href=http://www.hvihi.com target=_blank class=infotextkey>软件开发</a></a>,<a href=http://www.hvihi.com target=_blank class=infotextkey>沈阳<a href=http://www.hvihi.com target=_blank class=infotextkey>软件公司</a></a>

. 如果该对象实现有相应的stub,则客户可以通过该stub向对象实现发送请求。否则,在接口池的协助下,客户可以使用动态调用接口来向对象实现发出请求。3. 当对象调用请求通过stub或动态调用接口到达ORB核心以后,ORB核心负责请求的传送,将其送给相应的对象适配器。4. 对象适配器接到请求后,判断一下所请求的对象实现是否有skeleton存在,如果有,则对象适配器通过skeleton调用执行对象实现中的操作,否则,对象适配器将通过DSI中的动态实现例程来调用对象实现中的操作。5. 对象实现的特定操作方法执行完成后,结果将按照对象请求传递和执行路径逆向返回给客户对象。如上所述,客户方向服务方发送请求时首先要获得服务方的对象引用。获得对象引用的方式有三种:1. 固定位置信息。2. 通过文件传输。3. 利用名字服务。由于InforBus(Emb)是专为嵌入式开发而设计的CORBA产品,所以受嵌入式平台的资源有限性的约束并没有实现自己的名字服务组件,但是能够使用遵循COSS标准的其他名字服务的实现,例如InforBus的名字服务。特点InforBus(Emb)在操作系统上使用共享库的形式,实现了微内核体系结构的ORB。InforBus(Emb)的ORB被分为几个相对独立的组件,这些组件能够在编码时动态的进行加载。只有需要的组件才被加载到内存中。这保证了内存使用的低消耗。所以InforBus(Emb)是专为嵌入式开发所设计的实时CORBA产品。InforBus将系统中的线程分为通讯线程与处理线程,通讯线程负责读写网络,向缓冲队列中写请求,读应答;处理线程负责从缓冲队列中读请求,写应答。这两部分可以分别进行配置,服务方可以根据网络压力灵活配置通讯线程的数量,还可以预先汇海一定数量的处理线程,这些线程同数据库服务器建立相应的连接,然后从缓冲队列中读取客户请求进行处理。这种方式避免了传统的每请求一进程方式中进程数和数据库连接数难以控制的问题,从而降低了资源消耗,提高了系统的稳定性。InforBus(Emb)具有良好的互操作特性,CORBA标准中定义了ORB之间进行通信的的协议----GIOP协议,所以不同厂家之间的ORB可以直接进行互操作。例如:A应用系统是基于Iona Orbix开发的,B应用系统是基于中创InforBus(Emb)开发的,由于这两个产品都遵循CORBA标准,所以它们之间可以无缝结合,譬如A系统的客户方可以直接访问B系统中的服务方而不需桥接转换。InforBus(Emb)能够对跨平台异构系统进行良好的支持。InforBus(Emb)支持目前绝大多数的主流嵌入式操作系统,并自动屏蔽这些系统间的数据表示差异。已支持的操作系统有:VxWorks、Windows XP、Windows CE、Solaris 7/8, Linux, Real-Time Linux, RTEMS and LynxOS等,并且能够方便的移植到其他的嵌入式操作系统上。InforBus(Emb)支持同步通讯与异步通讯。当采用同步方式时,客户端发出请求,阻塞等待服务器返回应答;当采用异步方式时,客户端发出请求后可以继续运行,不必等待服务器应答。InforBus(Emb)支持对话通讯。基于InforBus的应用系统中,客户端与服务端都是作为一个个的对象插在ORB总线上,二者的身份可以互换,没有严格的区分。任何对象都可以作为客户端发送请求,也可以作为服务方接收处理请求,因而可以支持复杂应用系统的构建。InforBus(Emb)支持多种网络协议。除了以太网协议外,InforBus(Emb)还支持Scalable Coherent Interface (SCI) and the Controller Area Network (CAN)。InforBus(Emb)具备超时重发机制,在通讯线路质量较差的系统中,可以有效地屏蔽网络抖动。InforBus(Emb)具备良好的实时特性,支持基于优先级的完全抢先调度。能够有效的防止优先级翻转。InforBus(Emb)的安全服务组件支持国际流行的SSL协议。操作系统Windows 95/98/NT/2000IBM AIXHP-UXSGI IRIXSUN SolarisDEC OSF/1LinuxVxWorksWinCE

“沈阳软件公司”的新闻页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与

我们联系删除或处理,客服QQ:55506560,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同

其观点或证实其内容的真实性。

推荐阅读