系统软件的核心是( 二 )


外围:是指操作系统中除以上三类以外的所有其他部分通常是用于带给特定高级服务的部件 。例如在微内核结构中大部分系统服务以及UNIX/Linux中各种守护进程都通常被划归此列 。
并不是所有的操作系统都严格包括这四大部分 。例如在早期的微软视窗操作系统中各部分耦合程度很深难以区分彼此 。而在使用外核结构的操作系统中则根本没有驱动程序的概念 。
操作系统中四大部分的不同布局也就构成了几种整体结构的分野 。常见的结构包括:简单结构、层结构、微内核结构、垂直结构、和虚拟机结构 。
内核结构
内核是操作系统最内核最基础的构件因而内核结构往往对操作系统的外部特性以及应用领域有着必须程度的影响 。尽管随着理论和实践的不断演进操作系统高层特性与内核结构之间的耦合有日趋缩小之势但习惯上内核结构仍然是操作系统分类之常用标准 。
内核的结构能够分为单内核、微内核、混合内核、外内核等 。
单内核 Monolithickernel又称为宏内核 。单内核结构是操作系统中各内核部件杂然混居的形态该结构于1960年代 亦有1950年代初之说尚存争议历史最长是操作系统内核与外围分离时的最初形态 。
微内核 Microkernel又称为微核心 。微内核结构是1980年代产生出来的较新的内核结构强调结构性部件与功能性部件的分离 。20世纪末基于微内核结构理论界中又发展出了超微内核与外内核等多种结构 。尽管自1980年代起大部分理论研究都集中在以微内核为首的“新兴”结构之上然而在应用领域之中以单内核结构为基础的操作系统却一向占据着主导地位 。
混合内核 Hybridkernel像微内核结构只但是它的组件更多的在核心态中运行以获得更快的执行速度 。
外内核 Exokernel的设计理念是尽可能的减少软件的抽象化这使得开发者能够专注于硬件的抽象化 。外核心的设计极为简化它的目标是在于同时简化传统微内核的讯息传递机制以及整块性核心的软件抽象层 。
在众多常用操作系统之中除了QNX和基于Mach的UNIX等个别系统外几乎全部采用单内核结构例如大部分的Unix、Linux以及Windows 微软声称WindowsNT是基于改良的微内核架构的尽管理论界对此存有异议 。微内核和超微内核结构主要用于研究性操作系统还有一些嵌入式系统使用外核 。
基于单内核的操作系统通常有着较长的历史渊源 。例如绝大部分UNIX的家族史都可上溯至1960年代 。该类操作系统多数有着相对古老的设计和实现 例如某些UNIX中存在着超多1970年代、1980年代的代码 。另外往往在性能方面略优于同一应用领域中采用其他内核结构的操作系统 但通常认为此种性能优势不能完全归功于单内核结构 。