根据IEEE(电气和电子工程师协会)的定义,嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置”(devices used to control, monitor, or assist the operaTIon of equipment, machinery or plants)。从中可看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。嵌入式系统是与应用紧密结合的,具有很强专用性,必须结合实际系统需求进行合理的裁减利用。国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
一.嵌入式操作系统基本要点包括以下7点
1.前后台系统
对基于芯片开发来说,应用程序一般是一个无限的循环,可称为前后台系统或超循环系统。循环中调用相应的函数完成相应的操作,这部分可以看成后台行为。中断服务程序处理异步事件,这部分可以看成前台行为。后台也可以叫任务级,前台也可以叫中断级。时间相关性很强的关键操作一定是靠中断服务程序来保证的。
2.操作系统
操作系统是计算机最基本的程序,操作系统复杂计算机系统全部软硬资源的分配与回收、控制与协调等并发的活动,提供用户获得良好的工作环境,为用户扩展新的系统能提供软件平台。
3.实时操作系统
实时操作系统是一段嵌入式系统启动后首先执行的背景程序,用户的应用程序是运行与RTOS之上的各个任务,RTOS根据各个任务的要求,进行资源管理,消息管理,任务调用及异常处理等工作。每个任务均有一个优先级,动态切换各个任务,保证对实时性的要求。
4.代码的临界区
代码的临界区是指处理时不可分割的代码,运行这些代码不允许被打断。一旦这部分代码开始执行,则不允许任何中断打入,为确保临界区代码的执行,在进入临界区之间要关中断,而临界区代码执行完成以后要立即开中断。
5.资源
程序运行时可使用的软、硬件环境统称为资源,资源可以是输入输出设备,例如打印机、键盘和显示器。资源也可以是一个变量、一个结构或一个数组等。
6.共享资源
可以被一个以上任务使用的资源叫做共享资源,为了防止数据被破坏,每个任务在共享资源打交通时,必须独占该资源,这叫做互斥。
7.任务
一个任务也称为作一个线程,是一个简单的程序,该程序可以认为CPU完全属于该程序自己,实时应用程序的设计过程,包括如何把问题分割成多个任务,每个任务都是整个应用的某一部分,被赋予一定的优先级,有它自己的一套CPU寄存器和自己的栈空间。
二.嵌入式系统的核心是嵌入式微处理器。
嵌入式微处理器一般具备以下4个特点:
1)对实时任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核心的执行时间减少到最低限度。
2)具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断。
3)可扩展的处理器结构,以能最迅速地开发出满足应用的最高性能的嵌入式微处理器。
4)嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,如需要功耗只有mW甚至μW级。
技术专区
- 睿赛德科技喜迁新址 ,RT-Thread进入新的加速发展阶段
- 可靠性高、控制灵活、低功耗可调速风扇散热系统
- 安防监控摄像头LED驱动解决方案
- 如何定制嵌入式Linux发行版
- 基于SoC实现的数据采集系统详解