微内核 Microkernel
Microkernel 微内核 内核提供操作系统的核心功能。微内核是内核的精简版本,它设计成在很小的内存空间内增加移植性,提供模块化设计,以使用户安装不同的接口,如UNIX、DOS、Windows、Workplace OS、Workp1ace UNIX等。IBM、Microaoft、开放软件基金会(OSF)和UNIX系统实验室(USL)等新操作系统都采用了这一研究成果的优点。最新的韩国操作系统Tmax Windows也使用了Microkernel。下面列出了两种著名的微内核操作系统:
Mach Carnegie-Mellon大学设计。
Nucleus Chorus系统公司(Beaverton,oregon)设计,该公司总部设在法国。
如上所述,微内核是内核的一种精简形式通常与内核集成在一起的系统服务层被分离出来,变成可以根据需求加入的选件,这样就可提供更好的可扩展性和更加有效的应用环境。使用微内核设计,对系统进行升级,只要用新模块替换旧模块,不需要改变整个操作系统。
我们可以用商业对比来解释微内核的模块概念。考虑一个过度忙碌的商务经理。通过将工作分给其他人,这位经理可以将他的能力更有效地用于重要的商务工作中去,并集中于其他一些任务,例如开辟新的商务分支等。可以雇佣一些新人来支持增长的商务活动。经理协调这些工作,但由其他的人做好雇佣他们时说好要做的事。与此类似,微内核操作系统支持执行少量核心任务,并管理可安装模块的活动。用这种方式,微内核对于它能做的工作是非常有效的,并是可移植的,这是指它可以被设计成在不同的处理器上运行。
基于微内核的操作系统如图M-6所示进行分层,并具有如下特征:
微内核提供一组“最基本”的服务,如进程调度、进程间通信、存储管理、处理I/O设备。其他服务,如文件管理、网络支持等通过接口连到微内核。与此相反,内核是集成的,比微内核更大。
微内核具有很好的扩展性,并可简化应用程序开发。用户只运行他们需要的服务,这有利于减少磁盘空间和存储器需求。
厂商可以很容易地将微内核移植到其他处理器平台,并在上面增加适合其他平台需要的模块化部件。
(这指文件服务器、工程应用等等)。
微内核和硬件部件有接口,并向可安装模块提供一个接口。在微内核中,进程通过传递消息或运行“线程”来发生相互作用。线程为将一个任务分解为多个子任务提供了途径,在多处理器环境下,线程可以在不同的处理器上独立运行。
下面列出一些重要的微内核操作系统:
Windows NT 这种操作系统是围绕着Microsoft设计的微内核而设计的,它紧跟在Mach设计之后。它提供线程调度、中断和意外事件管理、多处理器同步和系统恢复(在掉电之后)。它永远不会被存储器管理程序调出内存,而且它的执行也永远不能被其它进程中断。
OSF/1MK 这是开放式系统基金会的OSF/1UNIX操作系统使用微内核研究的最新版本。它实现了Mach内核,并提供虚拟存储管理、进程间通信和设备驱动程序管理。
UNIX SVR4 UNIX系统实验室公司推出了一个微内核的UNIX SVR4(系统V版本4)。它实现了Nucleus微内核。它提供前面讨论的所有微内核特征;然而,在微内核中不管理驱动程序。
WorkPlace OS IBM的微内核是基于Mach微内核的。这种微内核在Motorola PowerPC处理器上运行,它是Intel 80486和Pentium处理器的直接竞争者
口WorkPlace操作系统上的用户可以选择不同的运行于操作系统上的接口,如DOS、OS/2、Windows、U-NIX等。IBM微内核的体积很小(约40K),可处理基本的任务,如存储器管理、线程管理、中断管理和消息传递。
象Mach和Nucleus这样的微内核操作系统,使用户可以自己选择操作系统的接口和特性。它们十分适合可以选择多处理器和多操作系统的变化的计算机市场,开发商也可从中受益。它们能够很快地从一个系统向另一个系统移植他们的产品,使最终用户可以得到许多应用产品。这种模块化的设计也保证了可以得到大量的可选服务。
相关条目:IBM Operating SystemsIBM的操作系统;Mach,Carnegie-Mellon Microkernel Carnegie-Mellon的微内核Mach;OSF/1 Open Software Foundation开放软件基金会的OSF/1;Remote Procedure Call 远程过程调用;UNIX;Windows NT,Microsoft Microsoft的Windows NT;Workplace OS。