微内核和宏内核区别

血流不止 3个月前 已收到2个回答 举报

愣弟弟 2星

共回答了95个问题采纳率:92.1% 评论

一、微内核和宏内核区别:

1.所包含的功能不一样

宏内核几乎包含了所有功能,微内核之包含了部分

2.对网络的依赖不一样

宏内核模块依赖较强,例如linux去掉网络,会引发问题,正因为宏内核的这一个缺点,导致了一些问题:例如:要加强安全模块,就要更改所有的模块。

微内核:内核态只保留了最基本的功能:cpu调度,内存管理,进程通信。将文件系统驱动设备放在了外面。

3.代码设计不一样

宏内核的代码可以用百万来计,微内核可以只有几万,几十万。代码量越大bug越多。

4.操作系统不一样

微内核的操作系统:windows NT 7 8 ,minix, maxcOS ,WindowsBarrelfish

宏内核:linux unix

8小时前

22

幸福距离 2星

共回答了273个问题 评论

微内核和宏内核的区别:微内核相当于一个信息交换中心,自身可以实现的功能较少,他的主要职责是传递一个请求,一个A模块对其他模块功能的请求;而宏内核相当于一个是一个中央集权控制中心,把内存管理,文件管理等功能全部管理。

微内核:提供操作系统核心功能的内核的精简版本,它设计成在很小的内存空间内增加移植性,提供模块化设计,以使用户安装不同的接口与,如DOS、Workplace OS、Workplace Unix等。IBM、Microsoft等操作系统都采用了这一研究成果的优点。

宏内核:是操作系统核心架构的一种,此架构的特性是整个核心程序都是以核心空间(Kernel Space)的身份及监管者模式(Supervisor Mode)来运行。相对于其他类型的操作系统架构,如微核心架构或混核心架构等,这些核心会定义出一个高级的虚拟接口,由该接口来涵盖描述整个电脑硬件,这些描述会集合成一组硬件描述用词,有时还会附加一些系统调用,如此可以用一个或多个模块来实现各种操作系统服务,如进程管理、共时(Concurrency)控制、存储器管理等。

明白了上述两个定义后,看下面的我的理解:

1、微内核相当于一个信息交换中心,自身可以实现的功能较少,他的主要职责是传递一个请求,一个A模块对其他模块功能的请求。而宏内核相当于一个是一个中央集权控制中心,把内存管理,文件管理等功能全部管理。

2、两个内核的优缺点:

A、理论上来看,微内核的设计思想更好一些,它将系统分为各个小的功能模块,把设计难度大大降低。因此,系统的维护与修改也方便进行。

B、但是微内核的通信失效率很高,是一个大问题。宏内核的功能模块之间的耦合度太高,将修改与维护的代价提高。但是在目前的linux操作系统里不会因为此造成很大问题(目前的linux还不算很复杂)。宏内核因为是直接调用的,所以效率比较高。

6小时前

46
可能相似的问题

猜你喜欢的问题

热门问题推荐

Copyright © 2024 微短问答 All rights reserved. 粤ICP备2021119249号 站务邮箱 service@wdace.com