我已经做了几次谷歌搜索,但我似乎无法找到答案,至少在前两个搜索页面中没有。我想知道 Ubuntu 内核是模块化的还是单体的?我看到一篇文章说当今的大多数发行版都是高度模块化的,但没有足够具体的内容来提及具体的发行版。
只是感兴趣和想知道的东西!
Linux 内核既是单体内核又是模块化内核 :) 这些东西并不相互排斥。
单片内核是指所有部分共享公共地址空间的内核:
这减少了涉及的上下文切换和消息传递的数量,使概念比微内核更快。不利的一面是,在内核空间中运行的代码量使内核更容易出现致命错误。
“单体内核”的反面是“微内核”,其中内核只负责协调在用户空间中运行的服务,这些服务完成所有实际工作。
“模块化内核”意味着
系统核心的某些部分将位于称为模块的独立文件中,这些文件可以在运行时添加到系统中。根据这些模块的内容,目标可能会有所不同,例如:
- 仅在实际找到设备时才加载驱动程序
- 仅在实际请求时才加载文件系统
- 仅在应评估时加载特定(调度/安全/任何)策略的代码
这些模块仍然在内核空间而不是用户空间中运行,因此内核架构仍然是单一的。