前言
第一章绪论
Linux与其他类Unix内核的比较
硬件的依赖性
Linux版本
操作系统基本概念
Unix文件系统概述
Unix内核概述
第二章内存寻址
内存地址
硬件中的分段
Linux中的分段
硬件中的分页
Linux中的分页
第三章进程
进程、轻量级进程和线程
进程描述符
进程切换
创建进程
撤消进程
第四章中断和异常
中断信号的作用
中断和异常
中断和异常处理程序的嵌套执行
初始化中断描述符表
异常处理
中断处理
软中断及tasklet
工作队列
从中断和异常返回
第五章内核同步
内核如何为不同的请求提供服务
同步原语
对内核数据结构的同步访问
避免竞争条件的实例
第六章定时测量
时钟和定时器电路
Linux计时体系结构
更新时间和日期
更新系统统计数
软定时器和延迟函数
与定时测量相关的系统调用
第七章进程调度
调度策略
调度算法
调度程序所使用的数据结构
调度程序所使用的函数
多处理器系统中运行队列的平衡
与调度相关的系统调用
第八章内存管理
页框管理
内存区管理
非连续内存区管理
第九章进程地址空间
进程的地址空间
内存描述符
线性区
缺页异常处理程序
创建和删除进程的地址空间
堆的管理
第十章系统调用
POSIXAPI和系统调用
系统调用处理程序及服务例程
进入和退出系统调用
参数传递
内核封装例程
第十一章信号
信号的作用
产生信号
传递信号
与信号处理相关的系统调用
第十二章虚拟文件系统
虚拟文件系统(VFS)的作用
VFS的数据结构
文件系统类型
文件系统处理
路径名查找
VFS系统调用的实现
文件加锁
第十三章I/O体系结构和设备驱动程序
I/O体系结构
设备驱动程序模型
设备文件
设备驱动程序
字符设备驱动程序
第十四章块设备驱动程序
块设备的处理
通用块层
I/O调度程序
块设备驱动程序
打开块设备文件
第十五章页高速缓存
页高速缓存
把块存放在页高速缓存中
把脏页写入磁盘
sync()、fsync()和fdatasync()系统调用
第十六章访问文件
读写文件
内存映射
直接I/O传送
异步I/O
第十七章回收页框
页框回收算法
反向映射
PFRA实现
交换
第十八章Ext2和Ext3文件系统
Ext2的一般特征
Ext2磁盘数据结构
Ext2的内存数据结构
创建Ext2文件系统
Ext2的方法
管理Ext2磁盘空间
Ext3文件系统
第十九章进程通信
管道
FIFO
SystemVIPC
POSIX消息队列
第二十章程序的执行
可执行文件
可执行格式
执行域
exec函数
附录一系统启动
附录二模块
参考文献
源代码索引
……