Look, this is my heart
当我们设计一个内核的时候,我们会考虑如下问题:
- 内核应该做什么
- 应该提供哪些系统调用
- 应该针对哪些部分进行抽象
内核的架构模式
宏内核(Monolithic kernel)
也被称为集成式内核,用户态和内核态在同一空间中实现,管理的资源多。例如Unix、linux等都是宏内核
微内核
不同架构对比
微内核 | 宏内核 | |
---|---|---|
尺寸 | 小 | 大 |
执行速度 | 慢 | 快 |
扩展性 | 容易 | 不易 |
安全性 | 单个服务崩溃不影响全局 | 单个服务崩溃往往导致系统崩溃 |
例子 | 塞班、Mac OS | Linux、Windos |