Linux全景图:
Linux模块很多,但大概可以分为5大组件:
众多组件之间主要靠函数调用来进行通信,一旦一个函数出了问题,就会波及整个组件,甚至导致整个系统崩溃,这说明Linux系统内核结构是传统的内核结构,也称为宏内核架构
Darwin-XNU 内核
Darwin 是由苹果公司在 2000 年开发的一个开放源代码的操作系统。它有两个内核层——Mach 层与 BSD 层,为什么两套内核会同时存在呢?是为了兼容之前为 Mach 开发的应用和设备驱动,就保留了 Mach 内核,同时加入了 BSD 内核。
Windows NT 内核
现代 Windows 的内核就是 NT(New Technology),NT 内核在设计上层次非常清晰明了,各组件之间界限耦合程度很低。 NT 内核架构如下图,其采用的是混合架构,图形驱动程序也设计在了内核中,因此性能强劲。
以下内容摘抄于评论区:关于 Linus Linux 内核 Darwin-XNU 内核 Windows NT 内核 评论区留存:
1. https://makelinux.github.io/kernel/
2.
1)NT是混合内核,内核相较于linux来说小,但是仍有一些模块在内核,也有相当多的模块在用户态。 架构额外清晰,也难怪几十年迭代都未曾大改大变
2)是上一节末尾提出的内核结构,混合内核,各个硬件平台自己实现HAL接口,可移植性很高 3)高内聚,低耦合,兼具宏内核与微内核特点,所以是混合内核
3. NT的图形性能是最好的 苹果次之,Linux最差
4. 一直用linux,有点神化linus了,确实需要对比,保持开放心态了解优秀的商业操作系统
5. 微内核是把内核服务 变成了一个个进程
6. 《Just for fun》