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