微內核
维基百科,自由的百科全书
|
|
本条目需要精通或熟悉本主题的專業人士参与及協助编辑。 |
在資訊科學中,微内核(Microkernel),又稱為微核心,是一個最小化的軟體程式,它可以提供完整的作業系統功能。
微内核结构由一个非常简单的硬件抽象层和一组比较关键的原语或系统调用组成;这些原语,仅仅包括了建立一个系统必需的几个部分;如线程管理,内存管理和进程间通信等。這種設計大大簡化了移植時的困難,因為內核的程式碼不多,也容易進行除錯,增加系統穩定性。
微核的目标是将系统服务的实现和系统的基本操作规则分离开来。例如,进程的输入/输出锁定服务可以由运行在微核之外的一个服务组件来提供。这些非常模块化的用户态服务器用于完成操作系统中比较高级的操作,这样的设计使内核中最内核的部分的设计更简单。一个服务组件的失效并不会导致整个系统的崩溃,内核需要做的,仅仅是重新启动这个组件,而不必影响其它的部分。
微内核将许多OS服务放入分离的进程,如文件系统,设备驱动程序,而进程通过消息传递调用OS服务。採用主從式架構,使得它在分散式系統中有特別的優勢。
微核心列表 [编辑]
微内核结构必然是多线程的,第一代微内核,在内核提供了较多的服务,因此被称为“胖微内核”,它的典型代表是Mach,它既是GNU HURD也是Mac OS X的内核。第二代微内核只提供最基本的OS服务,典型的OS是QNX,QNX在理论界很有名,被认为是一种先进的OS。L4微内核系列也是著名的微核心。
|
||||||||||||||||||||||||||||||