深入Linux内核架构讨论了Linux内核的概念、结构和实现。主要内容包括多任务、调度和进程管理,物理内存的管理以及内核与相关硬件的交互,用户空间的进程如何访问虚拟内存,如何编写设备驱动程序,模块机制以及虚拟文件系统,Ext文件系统属性和访问控制表的实现方式,内核中网络的实现,系统调用的实现方式,内核对时间相关功能的处理,页面回收和页交换的相关机制以及审计的实现等。此外,深入Linux内核架构借助内核源代码中最关键的部分进行讲解,帮助读者掌握重要的知识点,从而在运用中充分展现Linux系统的魅力。

深入Linux内核架构适合Linux内核爱好者阅读。

深入Linux内核架构 目录:

第1章 简介和概述 
 1.1 内核的任务 
 1.2 实现策略 
 1.3 内核的组成部分 
  1.3.1 进程、进程切换、调度 
  1.3.2 UNIX进程 
  1.3.3 地址空间与特权级别 
  1.3.4 页表 
  1.3.5 物理内存的分配 
  1.3.6 计时 
  1.3.7 系统调用 
  1.3.8 设备驱动程序、块设备和字符设备 
  1.3.9 网络 
  1.3.10 文件系统 
  1.3.11 模块和热插拔 
  1.3.12 缓存 
  1.3.13 链表处理 
  1.3.14 对象管理和引用计数 
  1.3.15 数据类型 
  1.3.16 本书的局限性 
 1.4 为什么内核是特别的 
 1.5 行文注记 
 1.6 小结 
第2章 进程管理和调度 
 2.1 进程优先级 
 2.2 进程生命周期 
 2.3 进程表示 
  2.3.1 进程类型 
  2.3.2 命名空间 
  2.3.3 进程ID号 
  2.3.4 进程关系 
 2.4 进程管理相关的系统调用 
  2.4.1 进程复制 
  2.4.2 内核线程 
  2.4.3 启动新程序 
  2.4.4 退出进程 
 2.5 调度器的实现 
  2.5.1 概观 
  2.5.2 数据结构 
  2.5.3 处理优先级 
  2.5.4 核心调度器 
 2.6 完全公平调度类 
  2.6.1 数据结构 
  2.6.2 CFS操作 
  2.6.3 队列操作 
  2.6.4 选择下一个进程 
  2.6.5 处理周期性调度器 
  2.6.6 唤醒抢占 
  2.6.7 处理新进程 
 2.7 实时调度类 
2.7.1 性质 
  2.7.2 数据结构 
  2.7.3 调度器操作 
 2.8 调度器增强 
  2.8.1 SMP调度 
  2.8.2 调度域和控制组 
  2.8.3 内核抢占和低延迟相关工作 
 2.9 小结 
第3章 内存管理 
 3.1 概述 
3.2 (N)UMA模型中的内存组织 
  3.2.1 概述 
  3.2.2 数据结构 
3.3 页表 
  3.3.1 数据结构 
  3.3.2 页表项的创建和操作 
 3.4 初始化内存管理 
  3.4.1 建立数据结构 
  3.4.2 特定于体系结构的设置 
  3.4.3 启动过程期间的内存管理 
 3.5 物理内存的管理 
  3.5.1 伙伴系统的结构 
  3.5.2 避免碎片 
  3.5.3 初始化内存域和结点数据结构 
  3.5.4 分配器API 
  3.5.5 分配页 
  3.5.6 释放页 
  3.5.7 内核中不连续页的分配 
  3.5.8 内核映射 
 3.6 slab分配器 
  3.6.1 备选分配器 
  3.6.2 内核中的内存管理 
  3.6.3 slab分配的原理 
  3.6.4 实现 
  3.6.5 通用缓存 
 3.7 处理器高速缓存和TLB控制 
 3.8 小结 
第4章 进程虚拟内存 
 4.1 简介 
 4.2 进程虚拟地址空间 
  4.2.1 进程地址空间的布局 
  4.2.2 建立布局 
 4.3 内存映射的原理 
  4.4 数据结构 
  4.4.1 树和链表 
  4.4.2 虚拟内存区域的表示 
  4.4.3 优先查找树 
 4.5 对区域的操作 
  4.5.1 将虚拟地址关联到区域 
  4.5.2 区域合并 
  4.5.3 插入区域 
  4.5.4 创建区域 
 4.6 地址空间 
 4.7 内存映射 
  4.7.1 创建映射 
  4.7.2 删除映射 
  4.7.3 非线性映射 
 4.8 反向映射 
  4.8.1 数据结构 
  4.8.2 建立逆向映射 
  4.8.3 应用逆向映射 
 4.9 堆的管理 
 4.10 缺页异常的处理 
 4.11 用户空间缺页异常的校正 
  4.11.1 按需分配/调页 
  4.11.2 匿名页 
  4.11.3 写时复制 
  4.11.4 获取非线性映射 
 4.12 内核缺页异常 
 4.13 在内核和用户空间之间复制数据 
 4.14 小结 
第5章 锁与进程间通信
第6章 设备驱动程序 
第7章 模块 
第8章 虚拟文件系统 
第9章 Ext文件系统族 
第10章 无持久存储的文件系统 
第11章 扩展属性和访问控制表 
第12章 网络 
第13章 系统调用
第14章 内核活动 
第15章 时间管理 
第16章 页缓存和块缓存
第17章 数据同步
第18章 页面回收和页交换 
第19章 审计 
附录A 体系结构相关知识 
附录B 应用源代码 
附录C 有关C语言的注记 
附录D 系统启动 
附录E ELF二进制格式 
附录F 内核开发过程 
参考文献

下载体验

请输入密码查看内容!

如何获取密码?

 

点击下载