关于单内核与多内核
1.单内核(执行效率)
单内核也叫集中式操作系统。整个系统是一个大模块,可以被分为若干逻辑模块,即处理器管理、存储器管理、设备管理和文件管理,其模块间的交互是通过直接调用其他模块中的函数实现的。
单内核模型以提高系统执行效率为设计理念,因为整个系统是一个统一的内核,所以其内部调用效率很高。
单内核的缺点也正是由于其源代码是一个整体而造成的,通常各模块之间的界限并不特别清晰,模块间的调用比较随意,所以进行系统修改或升级时,往往“牵一发而动全身”,导致工作量加大,使其难于维护。
2.微内核(模块化,可移植性)
微内核是指把操作系统结构中的内存管理、设备管理、文件系统等高级服务功能尽可能地从内核中分离出来,变成几个独立的非内核模块,而在内核只保留少量最基本的功能,使内核变得简洁可靠,因此叫微内核。
微内核实现的基础是操作系统理论层面的逻辑功能划分。几大功能模块在理论上是相互独立的,形成比较明显的界限,其优点如下:
·充分的模块化,可独立更换任一模块而不会影响其他模块,从而方便第三方开发、设计模块。
·未被使用的模块功能不必运行,因而能大幅度减少系统的内存需求。
·具有很高的可移植性,理论上讲只需要单独对各微内核部分进行移植修改即可。由于微内核的体积通常很小,而且互不影响,因此工作量很小。
在众多常用操作系统之中,除了QNX和基于Mach的UNIX等个别系统外,几乎全部采用单内核结构,例如大部分的Unix、Linux(也有人说Linux是基于单内核的混合型内核),以及Windows(微软声称Windows NT是基于改良的微内核架构的,尽管理论界对此存有异议)。微内核和超微内核结构主要用于研究性操作系统,还有一些嵌入式系统使用外核。
还有其他两种内核:
混合内核
混合内核实质上是微内核,只不过它让一些微核结构运行在用户空间的代码运行在内核空间,这样让内核的运行效率更高些。
外内核
也被称为纵向结构操作系统,是一种比较极端的设计方法。现在仍处于研究阶段。 参考:维基百科
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!