嵌入式软件与中间件介绍.ppt
嵌入式软件与中间件嵌入式软件与中间件ENIAC(Electronic Numerical Integrator And Computer),电子数值积分计算机,也可称埃尼阿克)是世界上第一台通用电子计算机,于1946年2月14日建造完成并公布。体积庞大,体积庞大,18000个个真空管,真空管,45吨吨晶体管计算机晶体管计算机1954年,美国贝尔实验室研制成功第一台使用晶体管线路的计算机,取名“催迪克”(),装有800个晶体管。iMac嵌入式嵌入式系统的概念系统的概念o概念(概念(IEEE)devices used to control,monitor,or assist the operation of equipment,machinery or plants.(嵌入式系统是控制、监嵌入式系统是控制、监视或者辅助某个设备、机器甚至工厂运行的设备。)视或者辅助某个设备、机器甚至工厂运行的设备。)用来执行特定功能用来执行特定功能以微电脑与周边构成核心以微电脑与周边构成核心需要严格的时序与稳定度需要严格的时序与稳定度全自动操作循环全自动操作循环嵌入式系统的概念(续)嵌入式系统的概念(续)o国内普遍接受的概念国内普遍接受的概念 嵌入式系统是以嵌入式系统是以应用应用为中心为中心,以以计算机计算机技术技术为基础为基础,软件硬件软件硬件可裁减可裁减,适于应用系适于应用系统对功能、可靠性、成本、体积、功耗统对功能、可靠性、成本、体积、功耗严格严格要求要求的的专用计算机系统专用计算机系统。嵌入式系统的组成嵌入式系统的组成o嵌入式系统组成嵌入式系统组成n系统硬件系统硬件o嵌入式处理器嵌入式处理器o外围硬件设备外围硬件设备n软件软件o嵌入式操作系统嵌入式操作系统o用户应用程序用户应用程序嵌入式系统的组成嵌入式系统的组成(续)(续)o系统系统硬件组成硬件组成n嵌入式处理器嵌入式处理器n外围电路外围电路n接口接口n外设外设MPU嵌入式处理器分类嵌入式处理器分类o嵌入式微处理器(嵌入式微处理器(MPU):运算器、控制器):运算器、控制器o嵌入式微控制器(嵌入式微控制器(MCU):片内):片内ROM、RAM、总、总线、线、I/O口、计数器、看门狗、口、计数器、看门狗、AD、DA、Flash o数字信号处理器(数字信号处理器(DSP):哈佛结构,适用于):哈佛结构,适用于FFT变换、谱分析、数字滤波等操作,用于音频、视频处变换、谱分析、数字滤波等操作,用于音频、视频处理理o片上系统(片上系统(SOC):):USB、GPRS、GPS、IEEE1394、蓝牙,、蓝牙,可靠性强、开发时间短可靠性强、开发时间短嵌入式处理器分类(续)嵌入式处理器分类(续)o嵌入式微处理器(嵌入式微处理器(MPU):):Am186/88、386EXo嵌入式微控制器(嵌入式微控制器(MCU):):8051、P51XAo数字信号处理器(数字信号处理器(DSP):):TMS320系列系列、DSP56200系列系列o片上系统(片上系统(SOC):):M-core、CC2430嵌入式微控制器嵌入式微控制器o嵌嵌入入式式微微控控制制器器又又称称单单片片机机,它它以以某某种种微微处处理理器器内内核核为为核核心心,将将计计算算机机系系统统的的各各个个部部分分集集成成在在一一块块芯芯片片中中,包包括括ROM/EPROM、RAM、总总线线、总总线线逻逻辑辑、定定时时/计计数数器器、看看门门狗狗、I/O、串串行行口口、脉脉宽宽调调制制输输出出、A/D、Flash RAM、EEPROM等。等。数字信号处理器数字信号处理器oDSP处处理理器器对对系系统统结结构构和和指指令令进进行行特特殊殊设设计计,使使其其适适合合于于执执行行DSP算算法法,编编译译效效率率较较高高,指指令令执执行行速速度度也也较较高高。在在数数字字滤滤波波、FFT、谱谱分分析析等等方方面面DSP算算法法正正在在大大量量进进入入嵌嵌入入式式领域。领域。片上系统片上系统o片片上上系系统统是是采采用用硬硬件件描描述述语语言言来来设设计计各各种种处处理理器器内内核核以以及及各各种种外外设设,把把设设计计好好的的单单元元存存储储在在器器件件库库中中,用用户户只只需需根根据据系系统统要要求求选选用用这这些些器器件件,仿仿真真通通过过后后就就可可以以将将设设计计图图交交给给半导体工厂制作样品。半导体工厂制作样品。外围外围硬件设备硬件设备o电源部分:交流电、电池供电电源部分:交流电、电池供电o输输入入部部分分:键键盘盘、鼠鼠标标、触触摸摸屏屏、拨拨码码开开关关等。等。o输输出出部部分分:发发光光二二极极管管、lED显显示示器器、LCD显示器、蜂鸣器等。显示器、蜂鸣器等。o存存储储部部分分:ROM、EPROM、EEPROM、FLASH、RAM。外围外围硬件设备硬件设备(续)(续)o接接口口电电路路:USB接接口口、PS/2接接口口、串串口口、IDE接接口口、红红外外接接口口、1394接接口口、CF卡卡接接口口、网网络络接接口口、CAN总总线线接接口口、RS422接接口口、RS485接接口口等等等等,每每一一种种接接口口一一般般都都对对应应一一个个专专用用的的控控制制芯芯片片,例例如如串串口口一一般般是是由由8250芯片来控制。芯片来控制。o其其他他硬硬件件逻逻辑辑电电路路:AD转转换换电电路路、电电机机驱驱动动电路、时钟日期生成电路等等。电路、时钟日期生成电路等等。嵌入式系统的组成(续)嵌入式系统的组成(续)o软件组成软件组成n操作系统操作系统n应用应用程序程序处理器处理器嵌入式操作系统分类嵌入式操作系统分类o顺序系统顺序系统o分时系统分时系统o实时系统实时系统n强实时:强实时:vxworksn弱实时:嵌入式弱实时:嵌入式linux、winceo开源:开源:linux、uClinux、uC/OS IIVxworks操作系统操作系统oVxworks操操作作系系统统是是一一个个非非常常优优秀秀的的嵌嵌入入式式操操作作系系统统,它它的的实实时时性性强强,内内核核可可裁裁剪剪到到很很小小,可可靠靠性性高高。在在北北美美,Vxworks占占据据了了嵌嵌入入式式操操作作系系统统的的多多半半市市场场,特特别别是是在在通通信信 设设 备备 等等 实实 时时 性性 要要 求求 较较 高高 的的 系系 统统 中中,Vxworks占占据据了了绝绝大大部部分分市市场场份份额额。但但是是Vxworks及及其其相相关关开开发发工工具具的的价价格格很很高高,小公司难以承受。小公司难以承受。嵌入式嵌入式Linux操作系统操作系统oLinux是一个成功的服务器操作系统,此外是一个成功的服务器操作系统,此外由于其开源、免费、可移植性好的特点,在由于其开源、免费、可移植性好的特点,在嵌入式系统中也有广泛应用。嵌入式嵌入式系统中也有广泛应用。嵌入式Linux可分为两类,一类经过修改,专门在设有内可分为两类,一类经过修改,专门在设有内存管理单元的硬件上运行,例如存管理单元的硬件上运行,例如uCLinux;另一类具有完全的另一类具有完全的Linux特性,运行于有内特性,运行于有内存管理单元的硬件平台,例如存管理单元的硬件平台,例如mini Linux.uC/OS II操作系统操作系统o目目前前很很多多大大学学都都以以uC/OS II 为为教教学学使使用用的的实实时时操操作作系系统统,这这主主要要是是由由于于uC/OS II 较较简简单单,源源码码公公开开,非非常常适适合合入入门门者者学学习习实实时时操操作作系系统统原原理理。uC/OS II 的的缺缺点点是是功功能有限,实际使用较少。能有限,实际使用较少。Windows CE操作系统操作系统oWindows CE是是微微软软公公司司推推出出的的嵌嵌入入式式操操作作系系统统,在在短短短短几几年年间间占占据据了了很很大大的的市市场场份份额额,特特别别是是在在PDA、手手机机、显显示示仪仪等等界界面面要要求求较较高高或或者者要要求求快快速速的的场场合合。Windows CE 的的开开发发平平台台主主要要为为Windows CE Platform Builder,有有时时也也用用EVC环环境境开发一些较上层的应用开发一些较上层的应用嵌入式应用软件嵌入式应用软件o固固态态化化存存储储:为为了了提提高高执执行行速速度度和和系系统统可可靠靠性性,嵌嵌入入式式系系统统中中的的软软件件一一般般都都固固化化在在存存储储器器芯芯片片或或单片机本身中,而不单片机本身中,而不存储在硬盘存储在硬盘等载体中。等载体中。o高高质质量量、高高可可靠靠性性:嵌嵌入入式式系系统统资资源源的的稀稀缺缺性性和和执执行行的的实实时时性性要要求求软软件件代代码码应应该该尽尽可可能能的的短短小小、高高效效、快快速速,为为此此对对编编程程以以及及编编译译器器的的设设计计提提出出了更高的要求。了更高的要求。o高高实实时时性性:在在多多任任务务嵌嵌入入式式系系统统中中,存存在在重重要要性性不不同同的的多多个个任任务务,如如何何对对多多任任务务请请求求合合理理的的响响应应是是系系统统设设计计的的关关键键这这个个环环节节处处理理不不当当很很可可能能导导致致灾难性结果。灾难性结果。中间件中间件o中间件中间件(middleware)是是基础软件基础软件的一大类,属于可复用软件的的一大类,属于可复用软件的范畴。顾名思义,中间件在操作系统、网络和数据库之上,应用范畴。顾名思义,中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。oIDC(Internet Data Center)定义:中间件是一种独立的系)定义:中间件是一种独立的系 统软件或服务程序,分布式应用软件借助这种软件在不同的技术统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。计算资源和网络通信。oIDC对中间件的定义表明,中间件是一类软件,而非一种软件对中间件的定义表明,中间件是一类软件,而非一种软件;中中间件不仅仅实现互连,还要实现应用之间的互操作间件不仅仅实现互连,还要实现应用之间的互操作;中间件是基于中间件是基于分布式处理的软件,最突出的特点是其网络通信功能。分布式处理的软件,最突出的特点是其网络通信功能。通用中间件类型通用中间件类型o企企业业服服务务总总线线(ESB:Enterprise Service Bus):ESB 是是一一种种开开放放的的、基基于于标标准准的的分分布布式式同同步步或或异异步步信信息息传传递递中中间间件件。通通过过 XML、Web 服服务务接接口口以以及及标标准准化化基基于于规规则则的的路路由由选选择择文文档档等等支支持持,ESB 为企业应用程序提供安全互用性。为企业应用程序提供安全互用性。o事事务务处处理理(TP:Transaction Processing)监监控控器器:为为发发生生在在对对象间的事务处理提供监控功能,以确保操作成功实现。象间的事务处理提供监控功能,以确保操作成功实现。o分分 布布 式式 计计 算算 环环 境境(DCE:Distributed Computing Environment):指指创创建建运运行行在在不不同同平平台台上上的的分分布布式式应应用用程程序序所所需需的一组技术服务。的一组技术服务。o远远程程过过程程调调用用(RPC:Remote Procedure Call):指指客客户户机机向向服务器发送关于运行某程序的请求时所需的标准。服务器发送关于运行某程序的请求时所需的标准。o对对象象请请求求代代理理(ORB:Object Request Broker):为为用用户户提提供供与其他分布式网络环境中对象通信的接口。与其他分布式网络环境中对象通信的接口。o数数据据库库访访问问中中间间件件(Database Access Middleware):支支持持用用户访问各种操作系统或应用程序中的数据库。户访问各种操作系统或应用程序中的数据库。o信信息息传传递递(Message Passing):电电子子邮邮件件系系统统是是该该类类中中间间件件的的其中一种。其中一种。o基基于于 XML 的的中中间间件件(XML-Based Middleware):XML 允允许许开发人员为实现在开发人员为实现在 Internet 中交换结构化信息而创建文档。中交换结构化信息而创建文档。中间件的特点中间件的特点o满足大量应用的需要满足大量应用的需要;o运行于多种硬件和运行于多种硬件和OS平台平台;o支支持持分分布布式式计计算算,提提供供跨跨网网络络、硬硬件件和和OS平台的透明性的应用或服务的交互功能平台的透明性的应用或服务的交互功能;o支持标准的协议支持标准的协议;o支持标准的接口。支持标准的接口。嵌入式中间件嵌入式中间件o运行于嵌入式系统的中间件运行于嵌入式系统的中间件o环境和应用需求不断变化,应用系统需要不断演进,环境和应用需求不断变化,应用系统需要不断演进,作为企业计算的基础设施,中间件需要感知、适应作为企业计算的基础设施,中间件需要感知、适应变化,提供对下列环境的支持:变化,提供对下列环境的支持:n支持移动、无线环境下的分布应用,适应多样性的设备支持移动、无线环境下的分布应用,适应多样性的设备特性以及不断变化的网络环境特性以及不断变化的网络环境 n支持流媒体应用,适应不断变化的访问流量和带宽约束支持流媒体应用,适应不断变化的访问流量和带宽约束 n在在DRE(DIstributed Real-time Enbeded)环境环境下,适应强下,适应强QoS的分布应用的软硬件约束的分布应用的软硬件约束 n能适应未来还未确定的应用要求能适应未来还未确定的应用要求