宏内核与微内核对比

上传人:小** 文档编号:90575071 上传时间:2019-06-13 格式:PDF 页数:3 大小:115.34KB
返回 下载 相关 举报
宏内核与微内核对比_第1页
第1页 / 共3页
宏内核与微内核对比_第2页
第2页 / 共3页
宏内核与微内核对比_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《宏内核与微内核对比》由会员分享,可在线阅读,更多相关《宏内核与微内核对比(3页珍藏版)》请在金锄头文库上搜索。

1、微内核与宏内核的比较与分析微内核与宏内核的比较与分析 内核内核(KernelKernel)在计算机科学中是操作系统最基本的部分,主要负责管理系 统资源。中文版维基百科上将内核分为四大类: 单内核(宏内核) ; 微内核; 混合内核; 外内核。(http:/zh.wikipedia.org/wiki/%E5%86%85%E6%A0%B8) 混合内核实质上也是微内核,而外内核是一种比较极端的设计方法,目前还 处于研究阶段,所以我们就着重讨论宏内核与微内核两种内核。 简单的介绍,宏内核宏内核( (MonolithicMonolithic kernelkernel) )是将内核从整体上作为一个大过 程来

2、实现,所有的内核服务都在一个地址空间运行,相互之间直接调用函数, 简 单高效。微内核微内核( (MicroMicro kernelkernel) )功能被划分成独立的过程,过程间通过 IPC 进行 通信,模块化程度高,一个服务失效不会影响另外一个服务。 两种设计各具特点, 较早的一些操作系统都是用宏内核写成的,这样的内核 通常以单个静态二进制文件的形式存放于磁盘,而后来随着模块化、分层思想的 产生, 人们开始对微内核感兴趣并持赞扬态度,认为微内核将成为内核的发展趋 势。微内核的功能被划分为独立的过程,每个过程叫做一个服务器,各种服务器 宏内核的示意图宏内核的示意图微内核的示意图微内核的示意图

3、之间通过 IPC 机制互通消息, 服务器的各自独立有效地避免了一个服务器的失效 祸及另一个,而且这种独立机制更利于操作系统在不同硬件上的移植。 当然, 微内核的这所有的优点都建立在因为消息传递开销而引起效率损失的 前提下(IPC 机制的开销比函数调用多,还会涉及到内核空间到用户空间的上下 文切换) ,这些损失有一部分是靠着现在硬件效率的飞速提升而抵消着的,但这 很明显是追不上宏内核的效率的。所以,有些使用微内核的操作系统(如新近版 本的 Windows NT 和 Mac OS X)让大部分或全部的服务器位于内核,这样就可以 直接调用函数,消除频繁的上下文切换,但这已经违背了微内核设计的初衷。

4、而相反的,宏内核在通信上比较高效,因为大家都运行在内核态,并身处同 一地址空间,内核可以直接调用函数,Linux 和大多数的 UNIX 都为宏内核。对 应的,宏内核不具有微内核的优点,宏内核的灵活性和可维护性不及微内核, 而 且移植起来并不简单 (不过有些宏内核支持者认为这样的移植比微内核更能够有 效地利用底层硬件) 。 历史告诉我们, 两种看似矛盾又各有长处的观点或解决方案总能找到结合点 的。Cache 的直接映射与关联映射结合产生了组关联映射;RISC 和 CISC 也是 各具优点,现代的好的 CPU 包括了这两种技术,将它们结合了起来。所以我相 信宏内核与微内核也会最终找到结合点的。 L

5、inux 虽是宏内核,但已吸收了微内核的部分精华。Linux 是模块化的、多 线程的、内核本身可调度的系统,既吸收了微内核的精华,又保留了宏内核的优 点,无需消息传递,避免性能损失。 此前所提到的微内核实现时让大部分服务器位于内核空间, 也算是微内核朝 宏内核靠拢的一个例子。 系统服务运行在内核系统服务运行在内核 空间的微内核空间的微内核 这两个例子都可以看到宏内核与微内核有结合的趋势, 但还没有完全真正的 结合成功,不过它们都已经同时具备了模块化和内核空间运行等的特征。 不同的意见与方法总会摩擦出精彩的火花, 宏内核与微内核之争也一定会产 生意想不到的好的结果, 估计在十年之内会有更完整的结合了宏内核与微内核精 华的新的内核版本出现,共同期待并努力吧。 Email:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号