分类: LINUX
2010-06-03 19:49:37
我们从内核功能和结构特点看,具有整体式内核、层次式内核、微内核三种不同形式。
整体式内核结构的操作系统实质上“无结构”。操作系统功能由一系列模块堆砌而成,任何模块之间可进行任意调用。整体式内核结构的操作系统不进行任何的数据封装和隐藏,在具有较高效率的同时,存在着难以扩展和升级的缺点。CP/M和MS-DOS属于此类结构的操作系统。
层次式内核结构的操作系统将模块功能划分为不同层次,下层模块封装内部细节,上层模块调用下层模块提供的接口。UNIX,LINUX,VAX/VMS,MULTICS等属于层次结构操作系统。层次化使操作系统结构简单,易于调试和扩展。两种操作系统的内核结构如图1-1所示。
不管整体式结构,还是层次式结构,它们的操作系统都包括了许多将其用于各种可能领域时需要的功能,故被称为宏内核操作系统,以至可以认为该内核本身便是一个完整的操作系统。以UNIX为例,其内核包括了进程管理、文件系统、设备管理、网络通信等功能,用户层仅仅提供一个操作系统外壳和一些实用工具程序。
(a)整体式结构 (b)层次式结构
嵌入式操作系统大多采用微内核结构。微内核操作系统是近二十年新发展起来的技术,内核非常小但效率高,从数十KB到数百KB字节,适合于资源相对有限的嵌入式应用。微内核将很多通用操作的功能从内核中分离出来(如文件系统,设备驱动,网络协议栈等),只保留最基本的内容。
一般认为微内核操作系统具有如下优点:
l 统一的接口,在用户态和核心态之间无需进程识别;
l 可伸缩性好,易于扩充,能适应硬件更新和应用变化;
l 可移植性好,操作系统要移植到不同的硬件平台上,只需修改微内核中极少代码即可;
l 实时性好,内核响应速度快,可以方便地支持实时处理;
l 安全可靠性高,微内核将安全性作为系统内部特性来进行设计,对外仅使用少量应用编程接口;
l 适合分布式计算环境。内核为进程传递消息的方式天然适合RPC这一计算模式。
由于操作系统核心常驻内存,而微内核结构精简了操作系统的核心功能,内核规模比较小,一些功能都移到了外存上,所以微内核结构十分适合嵌入式的专用系统,如图1-2所示的wind微内核结构。