引言
随着计算机软件技术的迅速发展,应用程序的规模也在不断扩大。应用范围也更加广阔。这不仅存在着多种硬件平台(例如台式机、嵌入式系统),而且在这些硬件平台上,通常又存在着多种的通信介质(例如串口、USB口等)、通信协议(例如TCP/IP等)及操作系统软件平台(例如Windows、Linux、Nucleus等)。我们的软件开发往往要求能够在这些异构的硬/软件平台上运行。
为此,我们引入了“中间件(Middleware)”的概念。本文在介绍中间件基本概念的基础上,结合研究项目“嵌入式地址信息系统的开发”来说明如何以中间件的形式设计该系统。
1、 中间件的基本概念
1、1 中间件定义及作用
中间件是位于平台(硬件和操作系统)和应用之间的通用服务www.cechina.cn,这些服务具有标准的程序接口和协议。针对不同的操作系统和硬
*满足大量应用的需要;
*运行于多种硬件和OS平台;
*支持分布计算,提供跨网络、硬件和OS平台的透明性应用或服务的交互;
*支持标准的协议;
*支持标准的接口。
在中间件设计思想下,软件的开发变得更加简单。首先,当系统硬件/操作系统平台改变时CONTROL ENGINEERING China版权所有,只需改变中间适配层的几个参数控制工程网版权所有,只要保持中间件层对应用层的接口定义不变,就可以直接将应用程序移植过去运行。所有的代码只需编写一次就可在任何系统上运行,大大缩短了系统研制的周期,提高了开发效率,同时还保证了系统的高伸缩性、易升级性稳定性。
其次,由于中间件屏蔽了底层平台差异,提供了标准的封装接口,使应用层以组件的形式实现为可能。用户可以根据自己的需要将各个组件有选择地进行组合控制工程网版权所有,像搭积木一样,构成自己的应用系统。
世界著名的咨询机构Standish Group在一份研究报告中归纳了中间件的十大优越性:
*缩短应用的开发周期;
*节约应用的开发成本;
*减少系统初期的建设成本;
*降低应用开发的失败率;
*保护已有的投资;
*简化应用集成;
*减少维护费用;
*提高应用的开发质量;
*保证技术进步的连续性;
*增强应用的生命力。
1、2 中间件应用现状及未来发展趋势
中间件的应用范围十分广泛,发展前景非常美好。据有关机的统计表明,近5年来,全球中间件的销售额平均年增长率为34%,到2004年总销售额将达到97亿美元。中间件已经成为国际IT巨头竞逐的目标,各大软硬件厂商都在积极参与有关标准的制定和产品的研发工作,像IBM、甲骨文、BEA、微软等都制定了相应的战略。据估计,未来基于Internet的电子商务业务将有79%建筑在中间件的基础之上。
中间件种类繁多,从不同的应用方面及发展程序上有不同的分类方法。在同上CONTROL ENGINEERING China版权所有,从中间件所起的作用上来说,中间件可以分为以下三类。
①数据类(data integration):用于数据的存取、利用和增值,此类中间用于构建以数据为中心的应用。
②处理类(process integration):把分布在网络结点上的各个应用或处理连接在一起,形成一个统一的、协同工作的分布式应用。
③分布式构件类(distributed components):支持