**章 嵌入式软件概述
计算机系统可以处理并管理各种数据,这里所说的数据包括文字、数字、图片以及各种指令。人们希望能制造各种智能机器,这些机器需要一套“大脑”系统,对其中一些很小的机器(如数码照相机),需要给它们设计一套小小的可以嵌在里面的“大脑”系统,这个“大脑”有多聪明,就要看它的软件了。这一类隐藏在一些更大的系统中管理和控制这些系统并带有微处理器的专用软硬件系统称为嵌入式计算机系统,通常称为嵌入式系统。由于嵌入式系统本身是一个外延极广的名词,凡是与产品结合在一起的具有嵌入式特点的控制系统都可以叫做嵌入式系统,所以很难给它下一个准确的定义。
IEEE(电气与电子工程师协会)对嵌入式系统的定义是:用于控制、监视或者辅助操作机器和设备的装置(devices used to control,monitor,or assist the operation of equipment,machinery or plants)。可以看出,此定义是从应用方面考虑的,即嵌入式系统是软件和硬件的综合体,还可以涵盖机电等附属装置。目前,国内普遍认同的定义是:嵌入式系统是指以应用为**、以计算机技术为基础,软硬件可以裁减,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。
1.1 嵌入式系统概述
1.1.1 嵌入式系统的组成
总体上,嵌入式系统可划分成硬件和软件两部分,硬件一般由高性能的微处理器和外围的接口电路组成,软件一般由硬件抽象层、操作系统、板级支持包、应用平台和应用程序几部分组成,如图1—1所示。
并非所有嵌入式系统都包含这些部分,有些系统没有操作系统,有些系统没有应用平台。更多时候设计人员是把这几种软件组合在一起的,即应用程序控制着系统的运作和行为,而操作系统控制着应用程序与硬件的交互。因为嵌入式系统本身考虑的是处理速度问题,所以这种设计方式更有利于程序与硬件、程序与程序的交互,从而提高整个系统的速度。嵌入式操作系统具有相对不变性,而不同的系统需要设计不同的嵌入式应用程序。
……