《Linux内核设计与实现》 读书笔记(1)--内核简介
《Linux内核设计与实现》 读书笔记(1)--内核简介
简单介绍内核相关的基本概念。
- 单内核和微内核
- 内核版本号
1.单内核和微内核
-- | 原理 | 优势 | 劣势 |
---|---|---|---|
单内核 | 整个内核都在一个大内核地址空间上运行。 | 1. 简单。2. 高效:所有内核都在一个大的地址空间上,所以内核各个功能之间的调用和调用函数类似,几乎没有性能开销。 | 一个功能的崩溃会导致整个内核无法使用。 |
微内核 | 内核按功能被划分成各个独立的过程。每个过程独立的运行在自己的地址空间上。 | 1. 安全:内核的各种服务独立运行,一种服务挂了不会影响其他服务。 | 内核各个服务之间的调用涉及进程间的通信,比较复杂且效率低。 |
Linux的内核虽然是基于单内核的,但是经过这么多年的发展,也具备微内核的一些特征。(体现了Linux实用至上的原则)
主要有以下特征:
- 支持动态加载内核模块
- 支持对称多处理(SMP)
- 内核可以抢占(preemptive),允许内核运行的任务有优先执行的能力
- 不区分线程和进程
2.内核版本号
内核的版本号主要有四个数组组成。比如版本号:2.6.26.1 其中,
2 - 主版本号
6 - 从版本号或副版本号
26 - 修订版本号
1 - 稳定版本号
副版本号表示这个版本是稳定版(偶数)还是开发版(奇数),上面例子中的版本号是稳定版。
稳定的版本可用于企业级环境。
修订版本号的升级包括BUG修正,新的驱动以及新的特性的追加。
稳定版本号主要是一些关键性BUG的修改。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY