2.5.1特殊操作系统-嵌入式操作系统:嵌入式系统特点、嵌入式系统特点、嵌入式系统开发设计-低功耗设计
考试当中涉及比较频繁的是嵌入式系统和嵌入式操作系统的特点。
嵌入式系统特点
嵌入式系统主要由嵌入式硬件平台、相关支撑硬件、嵌入式操作系统、支撑软件和应用软件组成。其中,嵌入性、专用性和计算机系统是嵌入式的三个核心要素。
典型的嵌入式系统具有以下特点:
系统专用性强
一般来说,嵌入式操作系统是以某一个确定的目标,或者某一个确定的任务为目标,来进行开发的,开发时,涉及软件和硬件都是绑定在一起的,这种情况下,专用性非常强。整个系统与特定的应用会有机结合起来。这种情况下,在对嵌入式系统进行更换的话,都是软硬件一起进行更换的,所以一般嵌入式系统硬件没坏的情况下,是很少有更换软件的需求的 。他在市场当中,生命周期相对而言比较长。
系统用实时性强
嵌入式系统一般应用的场景会要求系统对外来事件在非常优先的时间内,及时的做出响应,比如地铁闸机,高速ETC。大部分嵌入式系统都是实时的。
软硬件依赖性强
嵌入式系统除了嵌入式操作系统之外,还有软硬件的支撑。它的软硬件都是为了特定目的而协同设计的,如果单独去看某一个维度,单独做软件、或者单独做硬件设计的话,都很难达成我们预定的目标。
处理器专用
在嵌入式系统当中,一般会用专用的处理器与之匹配,它的处理器会根据我们的需要求来进行一些裁剪,进行一些设计,这样整个处理器功耗会比较低,体积会比较小,集成度会变高,有利于在做嵌入式设计的时候,它的小型化和移动能力强的目标。
多种技术紧密结合
嵌入式设计多种技术,包括我们用的计算机技术,还有半导体硬件相关的一些技术,电力电子相关的技术,机械相关的技术,还有应用目标上与相关行业相结合的技术,都需要紧密的进行结合,所以嵌入式开发,对人员的要求会比较高。相比于通用计算机看来看的话,我们通用的PC机有时候也会考虑这些技术,但是其紧密程度没有嵌入式要求的高。
系统透明性
与通用计算机会有区别,通用计算机会强调用户做一些操作,比如提供了鼠标键盘这样的输入输出设备,在嵌入式系统中可能感觉不到输入和输出,它会有一定的透明性,用户只需要了解它的功能,而不需要了解它系统的相关情况。
系统资源受限
嵌入式系统的开发要求比多,尤其在硬件方面,要求规模比较小,尽可能去做继承,可靠性会比较高,成本要求比较低,功耗要求比较低,这些限制了我们选择硬件的范围,对于嵌入式系统当中,存储容量、IO数量、处理器处理能力都会收到限制,一般使用的会比较紧凑。
嵌入式操作系统特点
针对嵌入式系统,会有嵌入式操作系统。
嵌入式操作系统特点:
- 微型化
- 代码质量高
- 专业化
- 实时性强
- 可裁剪
针对不同的硬件平台,操作系统通常建立在一个硬件抽象层(HAL)上,也叫做板级支撑包(BSP),该层位于底层硬件和内核之间,为内核提供各种方便已知的宏定义接口,在不同的平台移植时,只需要修改宏定义即可。
与硬件相关,与操作系统相关。
嵌入式系统开发设计-低功耗设计
嵌入式要求规模小,成本低,并且低功耗。在推出嵌入式相关的系统的时候,它不像PC机还需要插电源,它具有一定的移动端的特点,使用电池较多,而不是电源这种连接式的。
- 基于硬件的低功耗设计
板级电路低功耗设计;选择低功耗处理器;总线的低功耗设计;接口驱动电路的设计;分区分时供电技术。 - 基于软件的低功耗设计
编译优化技术(指令开销);软件与硬件的协同设计(硬件功能交由软件完成);算法优化(低时间复杂度)