华为“鸿蒙”所说的微内核到底是什么?宏内核呢?

标题:华为“鸿蒙”所涉及的微内核到底是什么?一文带你认识微内核
作者: 4d44f50c张
来源:RTThread物联网操作系统
链接:https://mp.weixin.qq.com/s?__biz=MzIwMzA2NzI1Ng==&mid=2655157932&idx=1&sn=84c9d90d23bc0ba26da56b67c9752b9f&chksm=8d63c4bbba144dadf633b9bbd8d4dd0b4e320417c3bb03b9317eaafa74aa861ffa715b8dd989&mpshare=1&scene=1&srcid=0810EqYztyNOadYeKVSrgZtn&sharer_sharetime=1565414210288&sharer_shareid=15bbeff94f96aad491c3d89da768b1e7

宏内核、微内核、混合内核的对比示意图

微内核设计的基本思想是简化内核功能,在内核之外的用户态尽可能多地实现系统服务,同时加入相互之间的安全保护。内核只提供最基础的服务,比如多进程调度、多进程通信(IPC)等。其中进程通信是作为连接应用与用户态系统服务的桥梁。

宏内核系统相关的服务基本都是放于内核态内核中,例如文件系统、设备驱动、虚拟内存管理、网络协议栈等;而微内核则把更多的系统服务(例如文件系统、POSIX服务、网络协议栈甚至外设驱动)放到用户态应用,形成一个个服务,等待其他应用的请求。

而后来,为了在宏内核与微内核之间扬长避短,也发展出了中间的混合内核的形态,部分服务也会放置于内核中。

本页永久链接:https://www.orztip.com/?p=104&article_title=micro-kernel-vs-monolithic-kernel