第一章物联网概述学习情境3信息智能处理描述本情境重要知识点:中间件的起源、定义、作用、分类及其技术规范和产品;云计算的起源、定义、作用、分类及其模式和产品。物联网中的信息智能处理涉及数据在基础设施、操作平台和应用软件之间的传输、存储与交换。实现信息的智能处理有赖于中间件和云计算等核心技术的支持。集中介绍关于中间件和云计算的相关知识与技术,并在此基础上列举了相关的应用系统,所涉及的概念与技术应用涵盖了电子工程的分布式自动化控制与嵌入式系统、计算机工程的分布式计算机系统、通信工程的宽度有线/无线通信网络和智能移动通信网络等横跨学科的内容。3.1物联网应用支撑•3.1.1中间件概述•3.1.2云计算技术平台概述•3.1.3应用系统工程概述描述计算机系统经历了20世纪30-70年代的大型机时代、70-90年代的小型与微型计算机时代、20世纪90年代的互联网时代,已经渐渐进入了物联网时代,并朝着泛在网时代的大方向发展。早期软件系统所支持的系统架构,例如早期在单机系统里管理计算资源的单机操作系统软件,以及在两层的用户-服务器系统中管理复杂数据的数据库管理软件,已经不能满足物联网系统架构中异构系统互联的需求。物联网中运行着为不同行业特别定制的计算机系统,并使用各自不同的操作系统软件,例如单片机、嵌入式系统、智能移动终端、客户固定或移动计算机和服务器等,要通过不同的通信协议实现跨行业、跨系统的信息交换,需要一个兼容并通的软件运行环境来支持在复杂分布式异构网络中各种应用软件协议与接口的互联互通,中间件软件也因此应运而生。•3.1.1中间件概述中间件是网络环境中运行于操作系统和应用程序之间的一类系统软件,它是随着互联网的出现与发展而衍生出来的一类特殊功用的系统软件,其作用主要是支持网络环境中软件实体之间的有效交互与连通。1.中间件的起源与历史2.中间件的定义和作用3.中间件的特点4.中间件的分类•3.1.1中间件概述1.中间件的起源与历史中间件就是在网络互联日益普及的大背景下,为了实现不同系统与平台间的网络资源管理与信息智能处理的应用需求而出现的一类系统软件,它专门提供对不同的交互模式、各种协议和接口定义方式的支持,连通不同的应用软件和系统平台,从而实现信息与资源的共享。•3.1.1中间件概述1.中间件的起源与历史软件的产生以及软件运行环境的变迁伴随着现代计算机系统的发展经历了4次变革,产生了5个标志性/阶段性的计算机系统,即模拟大型机、数字大型机、小型机/PC/服务器、互联网服务器和物联网云服务器。•3.1.1中间件概述1.中间件的起源与历史早期的单机系统时代,包括大型计算机、小型计算机、微型计算机PC及服务器等企业系统架构应用中,每一套系统架构运行着为其特制的操作系统软件,各行业终端或服务器之间也分别使用特制的通信协议和接口交换信息。•3.1.1中间件概述1.中间件的起源与历史硬件、应用软件、操作系统、DBMS、中间件•3.1.1中间件概述1.中间件的起源与历史•早期的大型机时代,第一次变革将通用功能硬件与复杂计算功能分离开来,产生了使用汇编语言编辑的程序,由程序去实现复杂的计算逻辑,从而出现了软硬件分离的计算机系统。•3.1.1中间件概述1.中间件的起源与历史•第二次变革为了提高计算机系统性能对算法的适应性,将计算资源管理这一共性成分(职能)提炼出来,沉淀产生了操作系统来负责管理CPU和存储器等计算资源。•3.1.1中间件概述1.中间件的起源与历史•第三次变革将数据管理的共性成分提炼出来,产生了数据库管理系统来负责管理庞大而且种类繁多的各类型数据,并分离出了应用软件。这一阶段的计算机系统由硬件,操作系统,数据库管理系统和应用软件四部分组成。•3.1.1中间件概述1.中间件的起源与历史•第四次变革把网络资源管理这一共性职能提炼出来,产生了中间件(系统软件)负责联接不同计算机系统间的底层操作系统与分布在各客户端或服务器上的上层应用软件,克服不同操作系统和网络协议间的差异,为应用程序提供多种通讯机制,并分离出了业务逻辑构件,提供相应的平台以满足不同领域的应用需要。•3.1.1中间件概述1.中间件的起源与历史•第四次变革把网络资源管理这一共性职能提炼出来,产生了中间件(系统软件)负责联接不同计算机系统间的底层操作系统与分布在各客户端或服务器上的上层应用软件,克服不同操作系统和网络协议间的差异,为应用程序提供多种通讯机制,并分离出了业务逻辑构件,提供相应的平台以满足不同领域的应用需要。•3.1.1中间件概述1.中间件的起源与历史操作系统数据库管理系统中间件产生动因硬件过于复杂数据操作过于复杂网络环境过于复杂主要作用管理各种资源组织各类数据支持不同的交互模式主要理论基础各种调度算法各种数据模型各种协议、接口定义方式产品形态不同的操作系统功能类似不同的数据库管理系统功能类似,但类型比操作系统多存在大量不同种类中间件产品,它们的功能差别较大•3.1.1中间件概述2.中间件的定义和作用中间件是基础系统软件的一大类,处于操作系统、网络协议和数据库之上,在用户的分布式应用软件的下层,故名中间件。•3.1.1中间件概述3.中间件的特点1)满足大量应用的需要2)运行于多种硬件和OS平台3)支持分布计算4)支持标准的协议5)支持标准的接口•3.1.1中间件概述4.中间件的分类(1)按软件结构模块划分中间件主要是用来支持网络环境中软件实体之间的有效交互的。“软件实体”是具有不同特征、不同粒度的软件构造模块。“有效”是指所支持的实体之间的交互必须具有可靠、安全、快速等特点。软件结构模块按粒度来划分可以分为过程(Procedure)、对象(Object)、构件(Components)和服务(Services)四个等级。构造软件系统时不同特征不同粒度的模块,在运行阶段表现出不同的性质。网络环境中它们之间的交互也分别需要不同类型中间件的支持。•3.1.1中间件概述4.中间件的分类(1)按软件结构模块划分1)过程2)对象3)构件4)服务•3.1.1中间件概述4.中间件的分类按应用目的和需求划分按规范框架划分按产品应用划分1)终端仿真/屏幕转换中间件、2)远程过程调用中间件、3)面向消息中间件、4)数据访问中间件、5)对象中间件、6)事务/交易中间件1)OSF的DCE2)OMG的OMA3)微软的DNA4)SUN的J2EE5)SOA1)事务中间件2)消息中间件3)应用服务器针对不同应用目的和需求的工作原理为了通用而提出规范框架基于需求与规范框架之上,企业开发的中间件产品•3.1.1中间件概述4.中间件的分类(2)按应用目的和需求划分1)终端仿真/屏幕转换中间件2)数据库访问中间件3)远程过程调用中间件4)面向消息中间件5)事务/交易处理监控器中间件6)对象请求代理中间件•3.1.1中间件概述4.中间件的分类(2)按应用目的和需求划分1)终端仿真/屏幕转换中间件(TES)早期的计算机都是一台主机连接多台终端机以交换字符的方式传递信息,而目前的PC可以模仿各种终端,通过调制解调器连接到其他的计算机上。模仿终端的计算机软件称为终端仿真软件,用以实现用户机图形用户接口与已有字符接口方式的服务器应用程序的互操作。•3.1.1中间件概述4.中间件的分类(2)按应用目的和需求划分2)数据库访问中间件(DAM)DAM是为了建立数据应用资源互操作的模式、对异构环境下的数据库实现联接或文件系统实现联接的中间件,支持用户访问各种操作系统或应用程序中的数据库,SQL是该类中间件的其中一种。•3.1.1中间件概述4.中间件的分类(2)按应用目的和需求划分3)远程过程调用中间件(RPC)RPC是一种广泛使用的分布式应用程序处理方法。•3.1.1中间件概述4.中间件的分类(2)按应用目的和需求划分4)面向消息中间件(MOM)MOM用来屏蔽各种平台及协议之间的特性,进行相互通信,实现应用程序之间的协同。•3.1.1中间件概述4.中间件的分类(2)按应用目的和需求划分5)事务/交易处理监控器中间件(TPM)TPM界于Client和Server之间,进行事务管理与协调、负载平衡和失败恢复等,以提高系统的整体性能。•3.1.1中间件概述4.中间件的分类(2)按应用目的和需求划分6)对象请求代理中间件(ORB)对象导向技术与分布式计算技术的发展与结合形成了分布对象计算,并发展为当今软件技术的主流方向之一。ORB在分布、异构的网络计算环境中将各种分布对象有机地结合在一起,完成系统的快速集成,实现对象重用,为用户提供与其他分布式网络环境中对象通信的接口。•3.1.1中间件概述4.中间件的分类(3)按规范框架划分1)OSF分布计算环境2)OMG对象管理架构3)MS分布式互联网应用4)SUN的J2EE5)面向服务的架构•3.1.1中间件概述4.中间件的分类(3)按规范框架划分1)OSF分布计算环境(DCE)DCE是开放软件基金会OSF(OpenSoftwareFoundation)制定的以远程过程调用(RPC)为核心的一系列规范。微软平台上提供了许多DCE/RPC的功能,但因为DCE缺乏概念模型,给开发带来困难,后来引进了面向对象的DCE(即OODCE),但这一包层,又给DCE带来更多层次,使系统交互过多,也增加了维护困难,整个系统必须完整安装,不但安装困难,而且许多功能由于用不到而闲置。•3.1.1中间件概述4.中间件的分类(3)按规范框架划分1)OSF分布计算环境(DCE)DCE是开放软件基金会OSF(OpenSoftwareFoundation)制定的以远程过程调用(RPC)为核心的一系列规范。微软平台上提供了许多DCE/RPC的功能,但因为DCE缺乏概念模型,给开发带来困难,后来引进了面向对象的DCE(即OODCE),但这一包层,又给DCE带来更多层次,使系统交互过多,也增加了维护困难,整个系统必须完整安装,不但安装困难,而且许多功能由于用不到而闲置。•3.1.1中间件概述4.中间件的分类(3)按规范框架划分2)OMG对象管理架构(OMA)对象管理集团OMG(ObjectManagementGroup)于1990年底首次推出的对象管理结构OMA模型,以对象请求代理(ObjectRequestBroker)为核心组件,一方面连接上层的应用接口/界面(ApplicationInterface),另一方面向下层提供对象服务(ObjectServices)。•3.1.1中间件概述4.中间件的分类(3)按规范框架划分2)OMG对象管理架构(OMA)对象管理集团OMG(ObjectManagementGroup)于1990年底首次推出的对象管理结构OMA模型,以对象请求代理(ObjectRequestBroker)为核心组件,一方面连接上层的应用接口/界面(ApplicationInterface),另一方面向下层提供对象服务(ObjectServices)。•3.1.1中间件概述4.中间件的分类(3)按规范框架划分3)MS分布式互联网应用(DNA)微软MicroSoft推出的“分布式互联网应用架构”(DistributedinternNetApplicationsarchitecture-DNA)是在W3C和IETF等制定的标准上构建的,充分支持开放式的Web功能,能够同时充分发挥个人计算机和Internet的能力的新模式。•3.1.1中间件概述4.中间件的分类(3)按规范框架划分3)MS分布式互联网应用(DNA)微软MicroSoft推出的“分布式互联网应用架构”(DistributedinternNetApplicationsarchitecture-DNA)是在W3C和IETF等制定的标准上构建的,充分支持开放式的Web功能,能够同时充分发挥个人计算机和Internet的能力的新模式。•3.1.1中间件概