关于书籍 Linux 内核
外观
< Linux 内核
本书的标题页和结构最初受到 Linux 设备驱动程序书籍中“分割内核”文章的影响,该文章包含一个图表。该图表的多彩矩阵设计借鉴了“交互式 Linux 内核地图”。此外,本书中信息的层级化展示灵感来源于OSI 模型的层级。层级和功能的数量有意接近神奇的数字七。
内核之上的用户模式下的应用程序和库可以与 OSI 模型的应用层相关联。
上层:
- 虚拟 - 为上层提供聚合的服务,以虚拟内存和虚拟文件系统命名。类似于会话层。
中间层:
- 逻辑 - 提供逻辑实现。以逻辑内存、地址和逻辑文件系统命名。类似于网络层。
下层,类似于数据链路层
- 设备控制 - HW 接口的抽象和控制。设备类别。与 HW 无关的通用设备。
- 硬件接口 - 直接 HW 接口。与 HW 相关的驱动程序。
处理、内存、存储和网络功能看起来非常熟悉和明显,而人机界面和系统功能需要一些解释。人机界面功能涵盖与人类用户而不是基本计算相关的主题。显然,HID(人机交互设备)属于此功能,因此名称和多媒体也属于此功能。字符设备,尽管在系统和存储中用作字节流,也被分配给 HI。系统功能涵盖基本和通用功能。内核的通用系统调用基础设施在该功能下进行了描述。特定系统调用和接口在其他相应功能下进行了描述。
二维布局而不是线性 TOC 布局允许有效地组织书籍内容,索引现有文档和手册页。
这本书需要贡献者。以下是指南
- 使文章完整、连续且引人入胜。
- 修复错别字并改写。
- 保持一致的格式。
- 通过用现代内容替换过时内容来保持信息更新。
- 分享您关于内核的知识和经验。
- 探索源代码并对其进行描述。
- 为不完整的部分添加解释。
- 从维基百科复制粘贴文本。
- 使用模板添加指向外部资源的链接
🔧 待办事项
- ...
🗝️ 首字母缩略词和/或关键词
- API – 应用程序编程接口
- ...
🖱️ GUI
- man 1 git-gui – Git 的一个便携式图形界面
- ...
⚲ APIs
- man 1 intro – 用户命令介绍
- man 2 intro – 系统调用介绍
- man 4 intro – 特殊文件介绍
- uapi inc – 用户空间 API
- man 2 syscall ↪
- entry_SYSCALL_64 id ↯ 调用层次结构
- do_syscall_64id
- ...
- do_syscall_64id
- entry_SYSCALL_64 id ↯ 调用层次结构
- ...
🛠️ 工具
- man 1 ls – 列出目录内容
- ...
👁️ 示例
- 示例src
- ...
⚙️ 内部结构
🚀 高级功能
- ...
📖 参考资料
📚 进一步阅读
💾 历史
- https://tldp.org/LDP/lki/
- https://tldp.org/HOWTO/KernelAnalysis-HOWTO.html
- https://www.kernel.org/doc/html/
- ...
感谢