操作系统微内核与宏内核有啥区别?
网友回复
操作系统内核是操作系统的核心部分,它管理着系统的各种资源。
内核可以看成连接应用程序和硬件的一座桥梁,是直接运行在硬件上的最基础的软件实体
在一些简单的硬件设备上可以没有内核或操作系统而直接运行程序,比方单片机等。这些设备通常只是用于特定的场合,也通常功能比较单一。而对于一般计算机来说操作系统是必不可少的。对不同的操作系统,其内核实现也是有所区别的。
目前从内核架构来划分,可分为微内核(Micro Kernel)和宏内核(Monolithic Kernel),“宏内核”这个翻译其实不是很好,翻译成“单内核”事实上更好一点。
对于微内核,用户服务和内核服务分别运行在不同的地址空间中;对于宏内核不管是用户服务还是内核服务事实上都是内核在统一管理,它们是运行在同一地址空间中的。
我们需要好好理解第5点,也就是用户服务和内核服务运行的地址空间的问题。大家都知道Linux采用的是宏内核,但是它也区分内核空间和用户空间,那不是有歧义了吗?我们先看一张图。
微内核定义: 内核管理着所有的系统资源,在微内核中用户服务和内核服务在不同的地址空间中实现。在应用程序和硬件的通信中,内核进程和内存管理的极...
点击查看剩余70%