Summary
- Introduction
- 1 概述
- 1.1 认识操作系统
- 1.2 开放源代码的Unix/Linux操作系统
- 1.3 Linux内核
- 1.4 Linux内核源代码
- 1.5 Linux内核模块编程入门
- 1.6 应用程序与内核模块的比较
- 1.7 Linux内核中链表的实现及应用
- 1.8 小结
- 习题
- 2 内存寻址
- 2.1 内存寻址
- 2.2 段机制
- 2.3 分页机制
- 2.4 Linux中的分页机制
- 2.5 Linux中的汇编语言
- 2.6 Linux系统地址映射举例
- 2.7 小结
- 习题
- 3 进程
- 3.1 进程介绍
- 3.2 Linux系统中的进程控制块
- 3.3 Linux系统中进程的组织方式
- 3.4 进程调度
- 3.5 进程的创建
- 3.6 与进程相关的系统调用及其应用
- 3.7 系统调用及应用
- 3.8 小结
- 习题
- 4 内存管理
- 4.1 Linux的内存管理概述
- 4.2 进程的用户空间管理
- 4.3 请页机制
- 4.4 物理内存分配与回收
- 4.5 交换机制
- 4.6 内存管理实例
- 4.7 本章小结
- 习题
- 5 中断和异常
- 5.1 中断是什么
- 5.2 中断描述符表的初始化
- 5.3 中断处理
- 5.4 中断的下半部处理机制
- 5.5 中断应用-时钟中断
- 5.6 本章小结
- 习题
- 6 系统调用
- 6.1 系统调用与应用编程接口、系统命令以及内核函数之关系
- 6.2 系统调用基本概念
- 6.3 系统调用实现
- 6.4 封装例程
- 6.5 添加新系统调用
- 6.6 实例-系统调用日志收集系统
- 6.7 本章小结
- 习题
- 7 内核中的同步
- 7.1 临界区和竞争状态
- 7.2 内核同步措施
- 7.3 生产者-消费者并发实例
- 7.4 内核多任务并发实例
- 7.5 小结
- 习题
- 8 文件系统
- 8.1 Linux文件系统基础
- 8.2 虚拟文件系统
- 8.3 文件系统的注册、安装与卸载
- 8.4 文件的打开与读写
- 8.5 编写一个文件系统
- 8.6 小结
- 习题
- 9 设备驱动
- 9.1 概述
- 9.2 设备驱动程序框架
- 9.3 I/O空间的管理
- 9.4 字符设备驱动程序
- 9.5 块驱动程序
- 9.6 小结
- 习题