嵌入式操作系统


参考:

[1] 《嵌入式系统软件及操作系统》


1、嵌入式操作系统的功能

在嵌入式系统中工作的操作系统被称为EOS(Embedded Operating System,嵌入式操作系统),EOS的基本功能主要是:

  • 构建一个易于编程的虚拟平台;
  • 系统资源的管理者。

2、嵌入式操作系统的分类

1. 按系统类型分

  • 商业化系统
  • 专用系统
  • 开放源代码系统

2. 按相应时间分

按照系统对响应时间的敏感程度,EOS可以分为实时操作系统(RTOS)和非实时操作系统两大类。

RTOS对响应时间有非常严格的要求。但某个外部时间或请求发生时,相应的任务必须在规定的时间内完成相应的处理。RTOS可以分为硬实时和软实时两种情形。

  • 硬实时系统   硬实时系统对响应时间有严格的要求,如果响应时间不能满足,可能会引起系统的奔溃或致命错误。
  • 软实时系统   软实时系统对响应的时间也有要求,如果响应的时间不能满足,将需要支付能够接收的额外代价。

非实时系统对响应时间没有严格要求,各个进程分享处理器,以获得各自所需的运行时间。

3. 按软件结构分

按照软件结构化分,EOS可以分为单体结构、分层结构和微内核结构3大类。

单体结构:

嵌入式操作系统_第1张图片

嵌入式Linux操作系统、Jbed RTOS、\mu C/OS-II和PDOS都属于单体内核结构。

在单体结构的操作系统中,中间件和设备驱动程序通常集成在系统内核当中,整个系统通常只有一个可执行文件,里面包含了所有的功能组件。

单体结构的操作系统由一组功能模块组成,系统各个模块之间可以相互调用,通信开销比较小,系统高度集成和相互关联,系统裁剪、修改、调试和维护不便。

分层结构:

采用分层结构的操作系统内部分为若干层次(0~N),各个层次之间的调用关系是单向的,即某一层次上的代码只能调用比它低层的代码。分层结构要求在每层次上都要提供一组API接口,增加了系统的额外开销,单系统的开发和维护较为简单。典型代表有MS-DOS,其结构就是一个有代表性的、组织良好的分层结构。

微内核结构:

微内核(microkernel)结构把操作系统的大部分功能都剥离出去,在内核中保留最核心的功能单元(如进程管理和存储管理),大部分的系统功能都位于内核之外,例如,将所有的设备驱动程序都置于内核之外。

嵌入式操作系统_第2张图片

3、常见的嵌入式操作系统

1. VxWorks

采用微内核结构体系。整个系统由四百多个相对独立,短小精炼的目标模块组成,用户可以根据自己的需要选择适当的模块,进行裁剪和配置。

2. 嵌入式Linux

嵌入式Linux是指对标准Linux进行裁剪处理之后,可固化在存储器或单片机中,适合于特定的嵌入式应用场合的专用Linux操作系统。

3. Windows CE

Windows CE是一个基于优先级的多任务嵌入式操作系统,提供256个优先级别,基本内核需要200KB的ROM,支持win32 API子集,支持多种用户界面硬件,支持多种串行和网络技术。Windows CE不是一个硬实时系统。

4. \mu C/OS-II

\mu C/OS-II是一个免费、开放源代码、结构小巧,基于可抢占优先级调度的实时操作系统,其内核提供任务调度与管理、时间管理、任务间同步与通信、内存管理和中断服务等功能。

\mu C/OS-II内核在2~10KB数量级,具有执行效率高,占用时间小,实时性能优良和可扩展等特点,主要面向中小型嵌入式系统。

\mu C/OS-II内核提供最基本的系统服务,例如信号箱、邮箱、消息队列、内存管理、中断管理等,

\mu C/OS-II本身不支持文件系统,但它具有良好的扩展性,可根据需要自行加入。


 

你可能感兴趣的:(Linux驱动开发)