单片机与微内核

单核内核和微内核在结构和安全性方面有什么不同? 我的朋友告诉我,Linux系统具有单一的内核,因此不容易破解,但我不认为他确实是正确的。

有人请赐教。

基本的区别是,一个微内核(MK)是非常小的,只提供了一个非常小的一套服务。 通常被认为是操作系统服务的大部分是由在内核之外执行的独立进程提供的,并且处于较低特权模式。 这些过程需要通过IPC的一些交stream,而不是只读/写任何他们想访问的数据结构。

因为内核很小,所以移植的代码比较容易移植。

由于提供的许多服务可能在用户空间而不是内核空间中运行,因此不能轻易地垃圾处理其他进程。 这是一个安全加。

例如,说networking堆栈的一部分是在用户空间,并被破坏,它可能无法破坏其他进程/任务。 而如果整体内核中的networking堆栈的相同部分可能正在内核空间中运行,那么如果被破坏,它将能够垃圾其他进程,因为它将是有特权的。

为了说明Jason的讲话,下面是一个例子,看看微混合和单片内核之间的区别:

核心

维基百科上的清晰图像源文件 。