|
知识路径: > 嵌入式系统软件基础知识 > 嵌入式操作系统基础知识 > 嵌入式操作系统基本概念 > 嵌入式操作系统的分类 >
|
相关知识点:4个
|
|
|
|
按照软件的体系结构,可以把嵌入式操作系统分为三大类:单体结构、分层结构和微内核结构。它们之间的差别主要表现在两个方面:一是内核的设计,即在内核中包含了哪些功能组件;二是在系统中集成了哪些其他的系统软件(如设备驱动程序和中间件)。
|
|
|
|
在单体结构的操作系统中,中间件和设备驱动程序通常就集成在系统内核当中。整个系统通常只有一个可执行文件,里面包含了所有的功能组件(如下图所示)。系统的结构就是无结构,整个操作系统由一组功能模块组成,这些功能模块之间可以相互调用。例如,嵌入式Linux操作系统、Jbed RTOS、μC/OS-II和PDOS都属于单体内核系统。
|
|
|
|
|
单体结构的优点是性能较好,系统的各个模块之间可以相互调用,通信开销比较小。它的缺点是操作系统具有体积庞大、高度集成和相互关联等特点,因而在系统剪裁、修改和调试等方面都较为困难。
|
|
|
|
在分层结构中,一个操作系统被划分为若干个层次,各个层次之间的调用关系是单向的,即某一层上的代码只能调用比它低层的代码。与单体结构相似,分层结构的操作系统也是只有一个大的可执行文件,其中包含有设备驱动程序和中间件。由于采用了层次结构,所以系统的开发和维护都较为简单。但是,这种结构要求在每个层次上都要提供一组API接口函数,这就会带来额外的开销,从而影响到系统的规模和性能。下图所示为MS-DOS的结构,这是一个有代表性的、良好组织的分层结构。
|
|
|
|
|
|
微内核结构或者客户-服务器结构的操作系统是指在内核中将操作系统的大部分功能都剥离出去,只保留最核心的功能单元(如进程管理和存储管理),微内核结构的特点就是内核非常小,大部分的系统功能都位于内核之外,例如设备驱动程序,所有的设备驱动程序都被置于内核之外,如下图所示。
|
|
|
|
|
在微内核操作系统中,新的功能组件可以被动态地添加进来,所以它具有易于扩展、调试方便等特点。另外,由于大部分的系统功能被放置在内核之外,而且客户单元和服务器单元的内存地址空间是相互独立的,因此系统的安全性更高。它还有一个优点就是移植方便。但是,与其他类型的操作系统相比(如单体内核),微内核操作系统的运行速度可能会慢一些,这是因为核内组件与核外组件之间的通信方式是消息传递,而不是直接的函数调用。另外,由于它们的内存地址空间是相互独立的,所以在切换的时候,也会增加额外的开销。许多嵌入式操作系统采用的都是微内核的方式,如OS-9、C Executive、VxWorks、CMX-RTX、Nucleus Plus和QNX等。
|
|
|