| 结构类型 |
核心特点 |
优点 |
缺点 |
典型案例 |
| 宏内核(大内核、单内核) |
系统功能都在内核中,运行于核心态 |
高性能,内核内部功能可直接调用 |
内核代码庞大、结构混乱,维护困难;某功能出错可能导致系统崩溃 |
Windows、Android、iOS |
| 微内核 |
仅将最基础功能(时钟、中断、原语、进程通信等)放在内核中,其余功能在核外 |
结构清晰、方便维护、可靠性高 |
需频繁在核心态与用户态间切换,性能低 |
Windows NT |
| 分层法 |
内核分为多层,每层仅能调用紧邻的底层功能 |
结构清晰,便于调试和验证;易于扩充和维护 |
设计困难,难界定层边界;效率低,执行时间长 |
- |
| 模块化 |
内核划分为主模块 + 可加载模块,模块间协作 |
逻辑清晰、易于维护;可动态加载模块;模块间直接调用,效率高 |
模块太多,接口难定义;调试困难 |
- |
| 外核 |
内核负责进程调度等,外核负责硬件资源的分配、回收、保护 |
用户可灵活使用硬件资源,减少虚拟资源映射层,提高效率 |
降低系统一致性,系统复杂度增加 |
- |