本书主要描述Linux系统的总体框架和设计思想,包含很多可以直接操作的实例,目的是希望读者对Linux系统背后的逻辑有一个全面的了解。本书力求贴近实际的工作使用,在比较核心且常用的技术点有更加深入的解释,对实际使用Linux系统工作大有裨益。本书共13章,其中第1~3章是总览,第4~13章是分领域阐述。第1~3章总体介绍Linux的基本知识;第4章以Linux系统的启动开始深入叙述;第5章是Linux系统运行中使用者*常接触到的进程概念,重点介绍进程的原理;第6章是Linux内核的内存管理方法与用户端使用内存的底层方法,即重点介绍glibc底层到内核之间的内存管理过程;第7~13章分别是关于安全机制、网络、总线与设备变动、二进制、存储、虚拟化与云、硬件专用子系统的内容。这些子系统都是Linux系统运行中非常重要的领域,是深入理解Linux系统原理不可或缺的知识补充。
内容简介
作者介绍
推荐序
前言
第1章 总览
1.1 简介
1.2 Linux学习曲线和职业曲线
1.3 如何形成一个内核
第2章 内核架构
2.1 常见架构范式与核心系统
2.2 基础功能元素
2.3 特殊硬件框架
2.4 特殊软件机制
第3章 内核数据结构
3.1 链表与哈希表
3.2 其他数据结构
第4章 Linux系统的启动
4.1 启动的硬件支持
4.2 Bootloader和内核二进制
4.3 Linux的启动原理
第5章 进程
5.1 进程原理
5.2 进程调度
5.3 资源
5.4 多进程与进程通信
第6章 Linux内核内存管理
6.1 内存模型
6.2 申请和释放内存
6.3 内存组件
第7章 安全
7.1 概览
7.2 密码学
7.3 Linux用户和权限系统
7.4 网络安全
7.5 函数调用的调试
7.6 内核调试
7.7 PAM和Apparmor
7.8 内核安全
7.9 常用安全工具和项目
第8章 网络
8.1 网络架构
8.2 socket
8.3 IP
8.4 TCP
8.5 网络服务质量与安全性
第9章 总线与设备变动
9.1 PCI
9.2 USB
9.3 用户空间的设备管理
第10章 二进制
10.1 函数调用
10.2 Linux的二进制兼容性问题
10.3 ELF文件执行原理
10.4 ELF的安全性
第11章 存储
11.1 磁盘管理
11.2 存储协议
11.3 通用块层抽象
11.4 缓存层
11.5 文件系统
11.6 存储系统
第12章 虚拟化与云
12.1 常见的虚拟化方案
12.2 虚拟文件系统
12.3 cgroup
12.4 Docker
第13章 硬件专用子系统
13.1 无线子系统
13.2 音频子系统

