操作系统笔记-1.4 操作系统的体系结构(上)
·
王道操作系统,视频链接:1.4 操作系统的体系结构(上)
操作系统的体系结构
操作系统的体系结构分为:大内核、微内核、分层结构、模块化、外核
考试常考的点为大内核(也称宏内核)、微内核。其他三个点了解即可。
操作系统的内核
操作系统分为内核功能与非内核功能,具体如图所示:
非内核功能:如GUI
内核功能:
- 进程管理、存储器管理、设备管理等功能
Ubuntu、CentOS的开发团队,其主要工作就是实现非内核功能,而内核都是用了Linux内核 - 时钟管理、中断处理、原语(设备驱动、CPU切换等)
原语是一种特殊的程序,具有原子性,也就是说,这段程序的运行不可被中断。 - 图示:

上方的时钟管理、中断处理、原语三个部分与硬件关联较为紧密,所以操作系统内核必须包括这三个部分。
因为对资源进行管理的功能更多的是对数据结构的操作,不会直接涉及硬件,所以不是所有操作系统都把这部分功能放到内核中的,其中,包括的称之为大内核,不包括的,称之为微内核。
无论内核如何定义,内核都需要运行在内核态,非内核功能都需要运行在用户态。
操作系统的体系结构
如图所示:
对于大内核来说,进程管理等三个需求都处于内核中,不需要频繁在用户态与内核态中切换,而对于微内核来说,这三个需求都处于非内核,每次处理都需要在用户态与内核态中切换,因为这个切换的过程是需要成本的,所以在图示的例子中,微内核下的系统性能会较低。(具体情况具体讨论,不是所有情况微内核新能都比大内核低)
注意:变态不是专业词汇,在考试等场景时,不能够使用这个词汇。
知识回顾与重要考点

关于Windows NT(来自deepseek)
Windows NT(意为“新技术”)在设计之初,确实希望打造成一个纯微内核系统,以实现更好的模块化和可移植性。
但微软很快在实践中碰到了微内核架构的经典问题:性能瓶颈。
-
问题:在微内核下,像图形子系统(GUI) 这类对性能要求极高的服务,如果放在用户态,每次操作都需要在内核态和用户态之间频繁切换,导致效率极低。
-
解决:为了解决性能问题,微软最终将图形子系统、DirectX技术等关键组件从用户态移入了内核态。
这种“设计上借鉴微内核思想,但实现上为了提高性能,将关键服务移入内核”的务实做法,最终形成了一种混合架构
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐
所有评论(0)