1、1机电控制基础与实践机电控制基础与实践(需求,应用,市场)王田苗 丑武胜2典型嵌入式系统基本组成硬件典型嵌入式系统基本组成硬件MPU微处理器微处理器电源电源模块模块时钟时钟复位复位FlashRAMROMUSBLCDKeyboard外围电路外围电路Other外设外设3典型嵌入式系统基本组成软件典型嵌入式系统基本组成软件处理器处理器存储器存储器输入输入输出输出操作系统操作系统应用程序应用程序软件软件结构结构硬件硬件结构结构42、嵌入式系统的定义、嵌入式系统的定义嵌入式系统本身是一个相对模糊的定义。一个手持的嵌入式系统本身是一个相对模糊的定义。一个手持的MP3MP3和和一个一个PC104PC104的
2、微型工业控制计算机都可以认为是嵌入式系统。的微型工业控制计算机都可以认为是嵌入式系统。嵌入式系统已经有了近嵌入式系统已经有了近30年的发展历史,它是硬件和软件年的发展历史,它是硬件和软件交替发展的双螺旋式发展。交替发展的双螺旋式发展。最早的单片机是最早的单片机是Intel公司的公司的8048,它出现在,它出现在1976年年Motorola同时推出了同时推出了68HC05,Zilog公司推出了公司推出了Z80系列,系列,这些早期的单片机均含有这些早期的单片机均含有256字节的字节的RAM、4K的的ROM、4个个8位位并口、并口、1个全双工串行口、两个个全双工串行口、两个16位定位定时时器。器。之
3、后在之后在80年代初,年代初,Intel又进一步完善了又进一步完善了8048,在它的基础,在它的基础上研制成功了上研制成功了8051。 51981年年Ready System发展了世界上第发展了世界上第1个商业嵌入式实时个商业嵌入式实时内核(内核(VTRX32)包含了许多传统操作系统的特征,包括任务管理)包含了许多传统操作系统的特征,包括任务管理、任务间通讯、同步与相互排斥、中断支持、内存管理等功能。、任务间通讯、同步与相互排斥、中断支持、内存管理等功能。随后,出现了如随后,出现了如Integrated System Incorporation (ISI)的的PSOS、IMG的的VxWorks
4、、QNX公司的公司的QNX 等,等,Palm OS,WinCE,嵌入式,嵌入式Linux,Lynx,uCOS、Nucleux,以及国内的,以及国内的Hopen、Delta OS等嵌入式操作系统。等嵌入式操作系统。今天今天RTOS已经在全球形成了已经在全球形成了1个产业,根据美国个产业,根据美国EMF(电子(电子市场分析)报告,市场分析)报告,1999年全球年全球RTOS市场产值达市场产值达3.6亿美元,而相亿美元,而相关的整个嵌入式开发工具(包括仿真器、逻辑分析仪、软件编译器关的整个嵌入式开发工具(包括仿真器、逻辑分析仪、软件编译器和调试器)则高达和调试器)则高达9亿美元。亿美元。 6IEEE
5、IEEE定义定义根据根据IEEE(国际电气和电子工程师协会)的定义:(国际电气和电子工程师协会)的定义:嵌入式系统是嵌入式系统是“用于控制、监视或者辅助操作机用于控制、监视或者辅助操作机器和设备的装置器和设备的装置”(原文为(原文为devicesusedtocontrol,monitor,orassisttheoperationofequipment,machineryorplants)。)。可以看出此定义是从应用上考虑的,嵌入式系统可以看出此定义是从应用上考虑的,嵌入式系统是软件和硬件的综合体,还可以涵盖机电等附属装是软件和硬件的综合体,还可以涵盖机电等附属装置。置。7一般定义一般定义“以以
6、应用应用为中心、以计算机技为中心、以计算机技术为基础、术为基础、软件硬件可裁剪软件硬件可裁剪、功能、功能、可靠性、成本、体积、功耗严格要可靠性、成本、体积、功耗严格要求求的的专用专用计算机系统。计算机系统。”8嵌入式系统定义要素嵌入式系统定义要素l专用计算机系统专用计算机系统( (非非PCPC智能电子设备智能电子设备) )l 以应用为中心以应用为中心l 以计算机技术为基础以计算机技术为基础l 软件硬件可裁剪软件硬件可裁剪l 适应应用系统对功能、可靠性、成本、体积、适应应用系统对功能、可靠性、成本、体积、 功耗严格要求功耗严格要求l 知识集成应用系统(知识集成应用系统(CSEACSEA)l技术密
7、集资金密集技术密集资金密集l高度分散不可垄断高度分散不可垄断l面向应用不断创新面向应用不断创新9嵌入式系统的分类嵌入式系统的分类l按表现形式分:按表现形式分: (硬件范畴)(硬件范畴)l芯片级嵌入(含程序或算法的处理器)芯片级嵌入(含程序或算法的处理器)l模块级嵌入(系统中的某个核心模块)模块级嵌入(系统中的某个核心模块)l系统级嵌入系统级嵌入l按实时性要求分:按实时性要求分: (软件范畴)(软件范畴)l非实时系统(非实时系统(PDA)l软实时系统(消费类产品)软实时系统(消费类产品)l硬实时系统(导引头等工业和军工系统)硬实时系统(导引头等工业和军工系统)10嵌入式硬件平台及分类嵌入式硬件平
8、台及分类11l嵌入式处理器系统嵌入式处理器系统l嵌入式处理器嵌入式处理器l各种类型存储器各种类型存储器l模拟电路及电源模拟电路及电源l接口控制器及接插件接口控制器及接插件l嵌入式软件系统嵌入式软件系统l实时操作系统(实时操作系统(RTOSRTOS)l板级支持包(板级支持包(BSPBSP)l设备驱动(设备驱动(Device DriverDevice Driver)l协议栈(协议栈(Protocol StackProtocol Stack)l应用程序(应用程序(ApplicationApplication)12嵌入式处理器嵌入式处理器l嵌入式处理器的发展趋势嵌入式处理器的发展趋势l经济性(成本)经
9、济性(成本)l微型化(封装、功耗)微型化(封装、功耗)l智能化(功能、速度)智能化(功能、速度)l嵌入式处理器的分类和现状嵌入式处理器的分类和现状l微控制器(微控制器(MCU)l微处理器(微处理器(MPU)l数字信号处理器(数字信号处理器(DSP)l混合处理器和片上系统(混合处理器和片上系统(SOC)l可编程片上系统(可编程片上系统(SOPC)13硬件设计工具(硬件设计工具(EDA工具)工具)系统级设计工具系统级设计工具Cadence的的SPWSystemView模拟电路系统仿真工具模拟电路系统仿真工具PspiceEWBPCB设计工具设计工具ProtelPADs的的PowerPCB&ToolK
10、itMentor的的Expedition&ToolKit可编程逻辑器件设计工具可编程逻辑器件设计工具MentorFPGAAdvantage&ModelSimXilinxFoundationISE&ToolKit各种综合和仿真第三方工具各种综合和仿真第三方工具14从硬件方面目前世界上具有嵌入式功能特点的处从硬件方面目前世界上具有嵌入式功能特点的处理器已经超过理器已经超过1000种,流行体系结构包括种,流行体系结构包括MCU,MPU等等30多个系列。多个系列。从单片机、从单片机、DSP到到FPGA有着各式各样的品种,有着各式各样的品种,速度越来越快,性能越来越强,价格也越来越低。速度越来越快,性能
11、越来越强,价格也越来越低。 根据其现状,嵌入式处理器可以分成下面几类根据其现状,嵌入式处理器可以分成下面几类 :15嵌入式微处理器分类嵌入式微处理器分类16(1)、嵌入式微控制器()、嵌入式微控制器(MCU)嵌入式微控制器的典型代表是单片机这种嵌入式微控制器的典型代表是单片机这种位的电子器件目前在嵌入式设备中仍然有着极其位的电子器件目前在嵌入式设备中仍然有着极其广泛的应用。广泛的应用。单片机芯片内部集成单片机芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时、总线、总线逻辑、定时/计数器、看门狗、计数器、看门狗、I/O、串行口、脉宽调制输出、串行口、脉宽调制输出、A/D、D/A、Fl
12、ashRAM、EEPROM等各种必要功能和外设。等各种必要功能和外设。17微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下降、可靠性提高。下降、可靠性提高。微控制器是目前嵌入式系统工业的主流。微控制器的片上外设资源微控制器是目前嵌入式系统工业的主流。微控制器的片上外设资源一般比较丰富,适合于控制,因此称为微控制器。一般比较丰富,适合于控制,因此称为微控制器。18由于由于MCU低廉的价格,优良的功能,所以拥低廉的价格,优良的功能,所以拥有的品种和数量最多,比较有代表性的包括有的品种和数量最多,比较有代表性的包括8051、MCS
13、-251、MCS-96/196/296、P51XA、C166/167、68K系列以及系列以及MCU8XC930/931、C540、C541,并且有支持,并且有支持I2C、CAN-Bus、LCD及众多专用及众多专用MCU和兼容系列。和兼容系列。近来近来Atmel推出的推出的AVR单片机由于其集成了单片机由于其集成了FPGA等器件,等器件,所以具有很高的性价比,势必将推所以具有很高的性价比,势必将推动单片机获得更高的发展。动单片机获得更高的发展。19(2 2)、嵌入式数字信号处理器()、嵌入式数字信号处理器(DSPDSP)lDSP处理器是专门用于信号处理方面的处理器,其在系统结构和处理器是专门用于
14、信号处理方面的处理器,其在系统结构和指令算法方面进行了特殊设计,指令算法方面进行了特殊设计,在数字滤波、在数字滤波、FFT、谱分析等各种仪器、谱分析等各种仪器上上DSP获得了大规模的应用。获得了大规模的应用。lDSP的理论算法在的理论算法在70年代就已经出现,但是由于专门的年代就已经出现,但是由于专门的DSP处理处理器还未出现,所以这种理论算法只能通过器还未出现,所以这种理论算法只能通过MPU等由分立元件实现。等由分立元件实现。 1982年世界上诞生了首枚年世界上诞生了首枚DSP芯片,芯片,在语音合成和编码解码器中得到了在语音合成和编码解码器中得到了广泛应用广泛应用。 DSP的运算速度进一步提
15、高,应用领域也从上述范围扩大的运算速度进一步提高,应用领域也从上述范围扩大到了通信和计算机方面。到了通信和计算机方面。l目前最为广泛应用的嵌入式目前最为广泛应用的嵌入式DSP处理器是处理器是TI的的TMS320C2000/C5000系列,另外如系列,另外如Intel的的MCS-296和和Siemens的的TriCore也有各自的应用范围。也有各自的应用范围。20MPU嵌入式微处理器是由通用计算机中的嵌入式微处理器是由通用计算机中的CPU演变而来的,演变而来的,8038680387与计算机处理器不同的是,在实际嵌入式应与计算机处理器不同的是,在实际嵌入式应用中,只保留和嵌入式应用紧密相关的功能硬
16、件用中,只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求。耗和资源实现嵌入式应用的特殊要求。(3 3)、嵌入式微处理器()、嵌入式微处理器(Micro Processor Unit)Micro Processor Unit)21和工业控制计算机相比,嵌入式微处理器具有体积和工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点。目前主要的小、重量轻、成本低、可靠性高的优点。目前主要的嵌入式处理器类型有嵌入式处理器类型有Am186/88、386EX、SC-400、Powe
17、rPC、68000、MIPS、ARM/StrongARM系列等系列等22SoC 就是就是System on Chip ,SoC嵌入式系嵌入式系统微处理器就是一种电路系统。统微处理器就是一种电路系统。它结合了许多功能区块,将功能做在一个芯它结合了许多功能区块,将功能做在一个芯片上,像是片上,像是ARM RISC、MIPS RISC、DSP或是其或是其他的微处理器核心,加上通信的接口单元,像是万他的微处理器核心,加上通信的接口单元,像是万用串行端口(用串行端口(USB)、)、TCP/IP通信单元、通信单元、GPRS通信接口、通信接口、GSM通信接口、通信接口、IEEE1394、蓝牙模块、蓝牙模块接
18、口等等,这些单元以往都是依照各单元的功能做接口等等,这些单元以往都是依照各单元的功能做成一个个独立的处理芯片。成一个个独立的处理芯片。(4 4)、嵌入式片上系统)、嵌入式片上系统(System On Chip) (System On Chip) 23SoC嵌入式系统微处理器所具有的其他的好处可嵌入式系统微处理器所具有的其他的好处可以分为下列几点:以分为下列几点:l利用改变内部工作电压,降低芯片功耗。利用改变内部工作电压,降低芯片功耗。l减少芯片对外管脚数,简化制造过程。减少芯片对外管脚数,简化制造过程。l减少外围驱动接口单元及电路板之间的信号传递减少外围驱动接口单元及电路板之间的信号传递,可以
19、加快微处理器数据处理的速度。,可以加快微处理器数据处理的速度。l内嵌的线路可以避免外部电路板在信号传递时所内嵌的线路可以避免外部电路板在信号传递时所造成系统杂讯。造成系统杂讯。24典型的嵌入式微处理器(典型的嵌入式微处理器(MPU)1ARM/StrongARM ARM(AdvancedRISCMachines)公司是全球领先的)公司是全球领先的16/32位位RISC微处理器知识产权设计供应商。微处理器知识产权设计供应商。ARM公司通过转让它的高性能、低成本、功耗低的公司通过转让它的高性能、低成本、功耗低的RISC微处理微处理器、外围和系统芯片设计技术给合作伙伴来生产各具特色的芯片。器、外围和系
20、统芯片设计技术给合作伙伴来生产各具特色的芯片。ARM公司已成为移动通信、手持设备、多媒体数字消费嵌入式公司已成为移动通信、手持设备、多媒体数字消费嵌入式解决方案的解决方案的RISC标准。标准。ARM处理器有三大特点:处理器有三大特点:1).小体积、低功耗、低成本而高性能;小体积、低功耗、低成本而高性能;2).16/32位双指令集;位双指令集;3).全球众多的合作伙伴。全球众多的合作伙伴。 25ARMARM7、ARM9、ARM9E、ARM10和和SecurCore。其中其中ARM7是低功耗的是低功耗的32位核,最适合应位核,最适合应用于对价位和功耗敏感的产品,它又分为应用于用于对价位和功耗敏感的
21、产品,它又分为应用于实时环境的实时环境的ARM7TDMI、ARM7TDMI-S,以及,以及适用于开放平台的适用于开放平台的ARM720T和适用于和适用于DSP运算运算及支持及支持Java的的ARM7EJ等。等。ARM7主要在主要在PDA、手持仪器仪表,、手持仪器仪表,ARM9、ARM10主要在主要在NC、TFT。26MIPSMIPSMIPS是是Microprocessor without Interlocked Pipeline Microprocessor without Interlocked Pipeline Stages MIPSStages MIPS技术公司技术公司它是一家设计制造高
22、性能、高档次及嵌入式它是一家设计制造高性能、高档次及嵌入式3232位位和和6464位处理器的厂商,在位处理器的厂商,在RISCRISC处理器方面占有重要地处理器方面占有重要地位。位。MIPSMIPS公司设计公司设计RISCRISC处理器始于处理器始于8080年代初,年代初, MIPS MIPS公司的战略发生变化,把重点放在嵌入式系统。公司的战略发生变化,把重点放在嵌入式系统。19991999年,年,MIPSMIPS公司发布公司发布MIPS 32MIPS 32和和MIPS 64MIPS 64架构标架构标准,为未来准,为未来MIPSMIPS处理器的开发奠定了基础。处理器的开发奠定了基础。27MIP
23、S的定位很广的定位很广在高端它有在高端它有64位的位的20Kc家族,在低端市场有家族,在低端市场有SmartMIPS。如果您有一台机顶盒设备,那很可能就是基如果您有一台机顶盒设备,那很可能就是基于于MIPSTM的;如果您有一台视频游戏机,或许的;如果您有一台视频游戏机,或许他就是基于他就是基于MIPS的;你的电子邮件或许就是通的;你的电子邮件或许就是通过基于过基于MIPS芯片的芯片的Cisco路由器来传递的;您的路由器来传递的;您的公司所使用的激光打印机也有可能使用着基于公司所使用的激光打印机也有可能使用着基于MIPS的的64位处理器。位处理器。 28PowerPCPowerPC架构的特点是可
24、伸缩性好,方便架构的特点是可伸缩性好,方便灵活。灵活。PowerPC处理器品种很多。处理器品种很多。既有通用的处理器,又有嵌入式控制器和既有通用的处理器,又有嵌入式控制器和内核,应用范围非常广泛,从高端的工作站、内核,应用范围非常广泛,从高端的工作站、服务器到桌面计算机系统,从消费类电子产品服务器到桌面计算机系统,从消费类电子产品到大型通信设备,无所不包。到大型通信设备,无所不包。 29基于基于PowerPC架构的处理器有:架构的处理器有:lIBM公司开发的公司开发的PowerPC405GP是一个集成是一个集成10/100Mbps以太以太网控制器、串行和并行端口、内存控制器以及其它外设的高性能
25、嵌网控制器、串行和并行端口、内存控制器以及其它外设的高性能嵌入式处理器。入式处理器。lMotorolaMPC823e微处理器是一个高度综合的片上系统(微处理器是一个高度综合的片上系统(SOC)设备,)设备,Apple是唯一采用是唯一采用RISC架构的架构的PC。l通信处理器和单硅成分内的显示控制器,低能源、便携式、通信处理器和单硅成分内的显示控制器,低能源、便携式、图象捕捉和个人通信设备。图象捕捉和个人通信设备。 30 x86x86系列处理器是我们最熟悉的了,它起系列处理器是我们最熟悉的了,它起源于源于intel架构的架构的8080。直到现在直到现在Pentium4、Athlon和和AMD的的
26、64位处理器位处理器Hammer。 486DX是当时和是当时和AMR,68K,MIPS和和SuperH齐名的五大嵌入式处理器之一。齐名的五大嵌入式处理器之一。 3168K68K/ColdfireMotorola68000(68K)是是 Apple2以前使用的就是以前使用的就是68000,比,比INTEL的的8088还要早。还要早。但现在,但现在,Apple、Motorola已放弃已放弃68k专注于专注于ARM了。了。 CISC是个人电脑是个人电脑CPU常用的,常用的,Intel、AMD、VIA都采用了都采用了CISC指令集指令集只有只有Apple电脑中的电脑中的PowePC使用了使用了RISC
27、架构。架构。因为因为CISC指令数量少,执行效率更高,而且当时的指令数量少,执行效率更高,而且当时的CPU时钟频时钟频率不同,没有牵涉到现在的超标量和超流水线的问题。率不同,没有牵涉到现在的超标量和超流水线的问题。RISC是精减是精减指令集,它每条指令长度都一样,有利于减化译码结构,减少处理器指令集,它每条指令长度都一样,有利于减化译码结构,减少处理器的晶体管数量,的晶体管数量, 32嵌入式软件平台及分类嵌入式软件平台及分类实时操作系统(实时操作系统(RTOS)RTOS的基本特征:高效的任务管理 1.支持多任务 2.优先级管理 3.任务调度:基于优先级的抢占式调度、时间片轮转调度的算法 4.支
28、持快速而确定的上下文切换快速灵活的任务间通信 1.信号量:二进制、互斥、计数器 2.通信机制:消息队列、管道等高度的可剪裁性动态链接与部件增量加载快速有效的中断和异常事件处理优化的浮点支持动态内存管理系统时钟和定时器几种最常见的几种最常见的RTOS:软实时软实时RTOS嵌入式嵌入式LinuxWinCE硬实时硬实时RTOSVxWorksOSENuclear著名的著名的openRTOSucOS/IIRTEMS自主知识产权的自主知识产权的RTOSHOPENDeltaOS34嵌入式软件开发工具嵌入式软件开发工具l开发工具开发工具l编译器(编译器(Compiler)l调试器(调试器(In Circuit
29、 Emulator)l软仿真(软仿真(Simulator)l集成开发环境(集成开发环境(IDE)l典型的商业开发工具及供应商典型的商业开发工具及供应商lWindriver公司的公司的Tornado for VxWorkslMontVisa公司的公司的HardHat Linux 开发工具包开发工具包lAMC公司的公司的SuperTAP调试器调试器l免费开发工具免费开发工具lGNU系列开发工具系列开发工具lWiggler调试器调试器35实时嵌入式操作系统的种类繁多,大体上可分为两实时嵌入式操作系统的种类繁多,大体上可分为两种,商用型和免费型。种,商用型和免费型。l商用型的实操作系统功能稳定、可靠,
30、有完善的技术商用型的实操作系统功能稳定、可靠,有完善的技术支持和售后服务,但往往价格昂贵。支持和售后服务,但往往价格昂贵。l免费型的实时操作系统在价格方面具有优势,目前主免费型的实时操作系统在价格方面具有优势,目前主要有要有Linux和和C/OS,稳定性与服务性存在挑战。,稳定性与服务性存在挑战。36VxWorkslVxWorks操作系统是美国操作系统是美国WindRiver公司于公司于1983年设计开发的一年设计开发的一种嵌入式实时操作系统(种嵌入式实时操作系统(RTOS),具有良好的持续发展能力、高),具有良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领性能的
31、内核以及友好的用户开发环境,在嵌入式实时操作系统领域牢牢占据着一席之地。域牢牢占据着一席之地。lVxWorks所具有的显著特点是:所具有的显著特点是:可靠性、实时性和可裁减性。可靠性、实时性和可裁减性。它支持多种处理器,如它支持多种处理器,如x86、i960、SunSparc、MotorolaMC68xxx、MIPS、POWERPC等等。等等。l大多数的大多数的VxWorksAPI是专有的,火星机器人。是专有的,火星机器人。37WindowsEmbeddedlWindowsCE3.0:一种针对小容量、移动式、智能化:一种针对小容量、移动式、智能化、32位、连接设备的模块化实时嵌入式操作系统。位
32、、连接设备的模块化实时嵌入式操作系统。l针对掌上设备、无线设备的动态应用程序和服务提供了针对掌上设备、无线设备的动态应用程序和服务提供了一种功能丰富的操作系统平台,一种功能丰富的操作系统平台, WindowsCE嵌入但不嵌入但不够实时,属于软实时操作系统,目前也开始中文手机的够实时,属于软实时操作系统,目前也开始中文手机的研究开发。研究开发。l由于其由于其Windows背景,界面比较统一认可。背景,界面比较统一认可。l操作系统的基本内核需要至少操作系统的基本内核需要至少200K的的ROM。 38pSOSlpSOS原属原属ISI公司的产品,公司的产品,但但ISI已经被已经被WinRiver公公司
33、兼并,现在司兼并,现在pSOS属于属于WindRiver公司的产品。公司的产品。l该系统是一个模块化、高性能的实时操作系统,开发该系统是一个模块化、高性能的实时操作系统,开发者可以利用它来实现从简单的单个独立设备到复杂的者可以利用它来实现从简单的单个独立设备到复杂的、网络化的多处理器系统功能。、网络化的多处理器系统功能。39PalmOSlPalmOS是著名的网络设备制造商是著名的网络设备制造商3COM旗下的旗下的PalmComputing掌上电脑公司的产品。掌上电脑公司的产品。l3COM、CISCO竞争竞争lPalmOS在在PDA市场上占有很大的市场份额,市场上占有很大的市场份额, PalmO
34、S的市场份额占到将近的市场份额占到将近90%,最近下降,最近下降70,目前,目前主要与主要与WINCE进行激烈竞争进行激烈竞争。 40OS-9lMicrowave的的OS-9是为微处理器的关键实时任务而是为微处理器的关键实时任务而设计的操作系统。设计的操作系统。l广泛应用于包括消费电子产品、工业自动化、无广泛应用于包括消费电子产品、工业自动化、无线通讯产品、医疗仪器、数字电视线通讯产品、医疗仪器、数字电视/多媒体设备等领多媒体设备等领域。域。 41LynxOSlLynxReal-timeSystems的的LynxOS是一个分布式、是一个分布式、嵌入式、可规模扩展的实时操作系统。嵌入式、可规模扩
35、展的实时操作系统。lLynxOS支持线程概念,提供支持线程概念,提供256个全局用户线程优个全局用户线程优先级。先级。l提供一些传统的、非实时系统的服务特征;包括基提供一些传统的、非实时系统的服务特征;包括基于调用需求的虚拟内存,一个基于于调用需求的虚拟内存,一个基于Motif的用户图形界的用户图形界面,与工业标准兼容的网络系统以及应用开发工具。面,与工业标准兼容的网络系统以及应用开发工具。42QNXl加拿大加拿大QNX公司的产品。公司的产品。lQNX是在是在X86体系上面开发出来的,这和别的体系上面开发出来的,这和别的RTOS不一样,别的好多不一样,别的好多RTOS都是从都是从68K的的CP
36、U上面开发成上面开发成熟,然后再移植到熟,然后再移植到X86体系上面来的。体系上面来的。lQNX是一个实时的、可扩充的操作系统,它部分遵循是一个实时的、可扩充的操作系统,它部分遵循POSIX相关标准。相关标准。l由于由于QNX具有强大的图形界面功能,因此很适合作为具有强大的图形界面功能,因此很适合作为机顶盒、手持设备(手掌电脑、手机)、机顶盒、手持设备(手掌电脑、手机)、GPS设备的设备的实时操作系统使用。实时操作系统使用。43嵌入式嵌入式LinuxLinuxl嵌入式系统越来越追求数字化、网络化和智能化。嵌入式系统越来越追求数字化、网络化和智能化。因此原来在某些设备或领域中占主导地位的软件系统
37、越因此原来在某些设备或领域中占主导地位的软件系统越来越难以为继,整个系统必须是开放的、提供标准的来越难以为继,整个系统必须是开放的、提供标准的API,并且能够方便地与众多第三方的软硬件沟通。,并且能够方便地与众多第三方的软硬件沟通。lLinux是开放源码的,不存在黑箱技术,遍布全球是开放源码的,不存在黑箱技术,遍布全球的众多的众多Linux爱好者又是爱好者又是Linux开发的强大技术后盾。开发的强大技术后盾。l Linux的内核小、功能强大、运行稳定、系统健壮、的内核小、功能强大、运行稳定、系统健壮、效率高,易于定制剪裁,在价格上极具竞争力。效率高,易于定制剪裁,在价格上极具竞争力。l Lin
38、ux不仅支持不仅支持x86CPU,还可以支持其他数十种,还可以支持其他数十种CPU芯片。芯片。44Linux还不过是个还不过是个10岁的小孩子,它源于一位芬岁的小孩子,它源于一位芬兰大学生兰大学生Linus Torvalds的课余作品。的课余作品。当时,当时,Linus Torvalds正在学习计算机科学家正在学习计算机科学家Andrew S.Tanenbaum开发的开发的Minix操作系统,但发操作系统,但发现现Minix的功能很不完善,于是就编写了一个保护模的功能很不完善,于是就编写了一个保护模式下的操作系统,这就是式下的操作系统,这就是Linux的原型。的原型。最开始,最开始,Linux
39、被定位于黑客用的操作系统,并被定位于黑客用的操作系统,并被放至被放至FTP服务器上供人们自由下载。服务器上供人们自由下载。45嵌入式实时内核嵌入式实时内核 C/OSC/OSl C/OSC/OS与与LinuxLinux一样,是一款公开源代码的免费实一样,是一款公开源代码的免费实时内核;时内核;l C/OSC/OS已在各个领域得到了广泛的应用已在各个领域得到了广泛的应用l C/OSC/OS的特点:的特点: 具有具有RTOSRTOS的具有的基本性能;的具有的基本性能; 代码尺寸小,结构简明;代码尺寸小,结构简明; 易学、易移植;易学、易移植;46lCOS不但提供了一个完整的嵌入式实时内核的源代码,而
40、且对这些代不但提供了一个完整的嵌入式实时内核的源代码,而且对这些代码的细节作了详尽的解释,它不仅告诉读者这个实时内核是怎么写的,还解码的细节作了详尽的解释,它不仅告诉读者这个实时内核是怎么写的,还解释了为什么要这样写。而商业上的实时操作系统软件不但价格昂贵(一般都释了为什么要这样写。而商业上的实时操作系统软件不但价格昂贵(一般都在在5千到千到2万美元的价位上),而且其中很多都是所谓黑盒子,即不提供源万美元的价位上),而且其中很多都是所谓黑盒子,即不提供源代码。代码。l源代码的绝大部分是用源代码的绝大部分是用C语言写的,经过简单的编译,读者就能在语言写的,经过简单的编译,读者就能在PC机上运行,
41、边读书、边实践。由于用汇编语言写的部分只有机上运行,边读书、边实践。由于用汇编语言写的部分只有200行左右,该行左右,该实时内核可以方便地移植到几乎所有的嵌入式应用类实时内核可以方便地移植到几乎所有的嵌入式应用类CPU上。移植范例的上。移植范例的源代码可以从因特网上下载。源代码可以从因特网上下载。l从最老版本的实时内核从最老版本的实时内核COS,以及后来的,以及后来的C/OS,到新版本的,到新版本的C/OS-II,已经有,已经有8年的历史。年的历史。8年来,许多行业上都有成功应用该实时源代年来,许多行业上都有成功应用该实时源代码码.实时内核移植实时内核移植.内核实时内核的实例,这些应用的实践是
42、该内核实用性、内核实时内核的实例,这些应用的实践是该内核实用性、无误性的最好证据无误性的最好证据。4780年代末,我设计了一个基于年代末,我设计了一个基于Intel 80C188的产的产品,需要一个实时内核。品,需要一个实时内核。使用一个知名的内核太贵了,廉价的内核使用一个知名的内核太贵了,廉价的内核B(当(当时大约时大约1000美元以下美元以下)让我总给该厂商打电话求援。该让我总给该厂商打电话求援。该厂商声称内核厂商声称内核B是用是用C语言写的,可我还得用汇编语言语言写的,可我还得用汇编语言初始化程序的每个对象,实在是烦透了,产品的开发初始化程序的每个对象,实在是烦透了,产品的开发也耽误了。
43、也耽误了。后来我得知我是该厂商的第一个客户。后来我得知我是该厂商的第一个客户。Jean J. Labrosse的故事的故事48我决定使用内核我决定使用内核A,价格是,价格是5000美元,我的每个美元,我的每个产品还要付产品还要付200美元的内核使用费。美元的内核使用费。内核转起来了,项目进展到内核转起来了,项目进展到3个月上,我的一个个月上,我的一个工程师发现该内核好像有毛病(工程师发现该内核好像有毛病(bug)。)。我和销售商争辩了好几个月,可是,他们不予理我和销售商争辩了好几个月,可是,他们不予理睬。他们睬。他们6个月后才改正了那个毛病。是的个月后才改正了那个毛病。是的, 6个月以个月以后
44、!我简直气坏了,最要紧的是,我的差品开发被耽后!我简直气坏了,最要紧的是,我的差品开发被耽误了。误了。49于是我决定试试写一个自己的实时内核,主要用于是我决定试试写一个自己的实时内核,主要用业余时间、晚上和周末。也花了大约一年的时间才使业余时间、晚上和周末。也花了大约一年的时间才使内核转起来,它在某些方面还比内核内核转起来,它在某些方面还比内核A好。好。我并不想开公司去卖这个内核,因为当时市场商我并不想开公司去卖这个内核,因为当时市场商已经有大约已经有大约50个实时内核的产品。个实时内核的产品。我想给杂志写一篇文章,打算投我想给杂志写一篇文章,打算投C语言用户杂语言用户杂志(志(C Users
45、 Journal)因为内核是用)因为内核是用C写写的,我听说该杂志每页给的,我听说该杂志每页给100美元的稿费,其他杂志美元的稿费,其他杂志一般是每页一般是每页75美元。美元。不幸,文章拒载了。两个原因,一是文章太长,不幸,文章拒载了。两个原因,一是文章太长,杂志不愿连载。另一个原因,他们也不愿杂志不愿连载。另一个原因,他们也不愿“又登一篇又登一篇关于内核的文章关于内核的文章”。50我决定转向嵌入式系统编程(我决定转向嵌入式系统编程(Embedded System Programming)杂志,因)杂志,因为我的内核是为嵌入式应用设计的。我和该杂志的为我的内核是为嵌入式应用设计的。我和该杂志的
46、编辑编辑Mr. Tyler Sperry联系,得到的答复和联系,得到的答复和C语言语言用户杂志是一样的,我们不要用户杂志是一样的,我们不要“又是一篇关于内又是一篇关于内核的文章核的文章”。然而,我反复解释:。然而,我反复解释:l我的实时内核和他们的不一样,是占先式的,我的实时内核和他们的不一样,是占先式的,可以和很多商业上出售的内核产品竞争,可以和很多商业上出售的内核产品竞争,l源代码可以放在嵌入式系统编程杂志网站源代码可以放在嵌入式系统编程杂志网站的留言板(的留言板(BBS)上,)上,l我每周要给我每周要给Mr. Tyler 打两三个电话,几乎是打两三个电话,几乎是求他发表我的文章,他终于同
47、意了,大概是我的电求他发表我的文章,他终于同意了,大概是我的电话打的他烦了。话打的他烦了。51我的文章从我的文章从70页压缩到页压缩到30页,连载在页,连载在1992年年5月期和月期和6月期杂志上,该文章几乎是月期杂志上,该文章几乎是1992年最热门年最热门的文章。的文章。头一个月,就有头一个月,就有500多人从嵌入式系统编程多人从嵌入式系统编程杂志的网站留言板(杂志的网站留言板(BBS)上下载我的源程序。)上下载我的源程序。该文章实际上是第一次给实时内核的内在工作该文章实际上是第一次给实时内核的内在工作原理曝光,一些过去的秘密公开了。原理曝光,一些过去的秘密公开了。R&D出版社要出版有关的书
48、,出版社要出版有关的书,C语言用户杂语言用户杂志杂志就是这家出版社出的,此时距我最初与该志杂志就是这家出版社出的,此时距我最初与该杂志社联系已有杂志社联系已有6个月了。个月了。52开始时,书销售得很慢,开始时,书销售得很慢,Berny坚持说,让人坚持说,让人知道这本书需要时间,于是他连续在知道这本书需要时间,于是他连续在C语言用户语言用户杂志杂志上刊登广告,一直持续了一年。杂志杂志上刊登广告,一直持续了一年。我第一次见到我第一次见到Tyler Sperry先生,问我愿不愿先生,问我愿不愿意在下一届嵌入式系统会议上做个讲演。他建议我意在下一届嵌入式系统会议上做个讲演。他建议我讲怎样使用讲怎样使用
49、“小实用内核小实用内核”。这个故事给我们启迪是:这个故事给我们启迪是:l认准事是要持之以恒,不怕挫折与失败;认准事是要持之以恒,不怕挫折与失败;l首先把自己的事做好做精,机会总会来临。首先把自己的事做好做精,机会总会来临。53l至今,至今, C/OS的书已售出了的书已售出了15,000多册。多册。 C/OS已被移植到以下一些已被移植到以下一些CPU上。上。lAnalog 设备公司设备公司 AD21xxlARM公司公司 ARM 6, ARM7l日立公司日立公司 64180,H8/3xx,SH系列系列lIntel公司公司 80 x86(Real and PM),Pentium, Pentium I
50、I, 8051,8052, MCS-251,80196,8096l三菱公司三菱公司 M16和和M32l摩托罗拉公司摩托罗拉公司 PowerPC, 68K, CPU32, CPU32,68H11,68HC16l飞利浦公司飞利浦公司 XAl西门子公司西门子公司 80C166和和TriCorelTI公司公司 TMS320lZilog公司公司 Z80 和和Z18054lC/OS-II读做读做“micro COS2”,意为,意为“微控制器操作系统版本微控制器操作系统版本2”。世界上已有数千人在各个领域使用。世界上已有数千人在各个领域使用C/OS,例如,照相机行业、,例如,照相机行业、医疗器械、音响设施、