大内核与微内核
大内核
- 将操作系统的主要功能模块都作为一个紧密联系的整体运行在核心态,从而应用于提高性能的系统服务
微内核
- 为何提出:大内核不能满足应用需求。(需要操作系统提供的服务增加,接口形式复杂、操作系统的设计规模急剧增长,操作系统也面临着“软件危机”问题)
- 实现:将内核中最基本的功能(如进程管理)保留在内核中,而将不需要在内核执行的功能转到用户态执行,那些移除内核的操作系统代码根据分层的原则被划分成若干服务程序,他们的执行相互独立,交互则都借助微内核进行通信
- 优点:有效的分离了内核和服务,服务和服务,使它们之间的接口更加清晰,维护代价降低,各个部分可以独立优化。
- 缺点:性能较低,需要频繁的在用户态和核心态之间转换。
库操作系统
- 为了减少切换开销,有人提出的一种将系统服务作为运行库链接到用户程序的解决方案
重点
- 微内核提高了系统可靠性,但是降低了性能
- 内核的服务越少,内核越稳定
参考文献
[1] 王道论坛,2021年操作系统考研复习指导[M]. 北京:电子工业出版社,2020.1