《边干边学LINUX内核指导》PDF下载

  • 购买积分:19 如何计算积分?
  • 作  者:李善平,季江民,尹康凯主编
  • 出 版 社:杭州:浙江大学出版社
  • 出版年份:2008
  • ISBN:7308030733
  • 页数:655 页
图书介绍:这是一本学习Linux内核的指导教材。根据作者在浙江大学计算机学院多年的教学实践,教材内容选定了Linux环境,shell编程,时钟与定时器,系统调用,进程调度,进程同步、虚拟存储,共享内存,设备驱动,文件系统,内核模块(module)等11个部分,其相关源代码贯穿整个Linux内核。学习操作系统必须动手实践。本书的特点就是边干边学,为此在每章里都安排了实验内容,章节围绕实验目的展开,以求在实验中掌握Linux内核,在实验中融会贯通。本书可以作为计算机专业本科生,研究生的操作系统实验教材,也可以作为Linux系统管理员、嵌入式系统研究开发人员的参考书。

第一部分 Linux操作环境第1章 Linux基础 1

1.1 登录和退出 1

1.2 Linx的shell 4

1.3 shell的一些基本命令 9

第2章 文本编辑 20

2.1 vi文本编辑器 20

2.2 emacs文本编辑器 25

第3章 Linux文件系统操作 29

3.1 文件类型 29

3.2 文件系统目录结构 31

3.3 目录操作的基本命令 35

3.4 文件操作的基本命令 39

3.5 显示字符串echo 46

3.6 命令行中使用扩展符 46

第4章 文件权限与文件共享 52

4.1 存取权限 52

4.2 改变文件的存取权限 55

4.3 特殊权限位SUID、SGID、Sticky 57

4.4 硬链接 58

4.5 符号链接 60

第5章 文件管理工具 63

5.1 正则表达式 63

5.2 排序文件 65

5.3 查找文件 66

5.4 搜索文件内容 68

5.5 命令记录 69

5.6 压缩文件、解压缩文件与打包文件 70

5.7 RPM包管理 72

第6章 Linux进程、管道和重定向 75

6.1 进程的属性 76

6.2 进程的终止 78

6.3 进程和作业控制 79

6.4 命令行中使用操作符 82

6.5 Linux系统启动和进程层次结构 83

6.6 系统启动和关机 84

6.7 输入、输出重定向 85

6.8 使用文件描述符 86

6.9 输入和输出重定向的组合使用 86

6.10 管道(pipe) 87

第7章 C语言开发工具 90

7.1 编写程序的工具 90

7.2 编译C语言程序 92

7.3 make工具 96

7.4 gdb调试工具 100

第8章 Bourn Again Shell编程 106

8.1 bash脚本的建立和运行 107

8.2 shell的变量 108

8.3 shell脚本位置参数的传递 113

8.4 控制结构语句 115

8.5 其他几个有用的语句 123

8.6 数值处理 126

8.7 数组 130

8.8 函数 131

8.9 here文档 134

8.10 exec命令 136

8.11 trap命令 139

8.12 调试脚本程序 141

第二部分 Linux内核分析与实践第9章 编译Linux内核 143

9.1 Linux内核 143

9.2 查找并且下载一份内核源代码 146

9.3 部署内核源代码 147

9.4 配置内核 147

9.5 编译内核和模块 148

9.6 了解Linux内核的启动 149

9.7 应用grub配置启动文件 151

9.8 编写制作Linux启动盘的shell脚本程序 153

9.9 Linux源程序的目录分布 156

9.10 学习Linux的常用工具 159

9.11 查看Linux内核状况 162

9.12 编程序检查系统状况 163

9.13 Linux编程环境 167

第10章 系统调用 174

10.1 一个简单的例子 174

10.2 系统调用基础知识 175

第11章 进程创建 211

11.1 进程是什么 211

11.2 进程的产生 229

11.3 进程的消亡/退出 262

11.4 实验一:用fork()系统调用 264

11.5 实验二:使用clone()系统调用 266

11.6 实验三:使用kernel thread 269

第12章 /proc文件系统 279

12.1 /proc文件系统 279

12.2 现有proc文件系统中各个文件的含义 280

12.3 怎样使用/proc文件系统 285

12.4 seq__file 289

12.5 proc文件系统的内部实现机制 293

12.6 实验一:使用proc文件系统的一个简单例子 325

12.7 实验二:利用/proc文件系统显示缺页状态 330

12.8 实验三:seq__file使用例子 330

第13章 内核模块 337

13.1 什么是内核模块 337

13.2 模块实现机制 340

13.3 使用内核模块 350

13.4 实例 352

第14章 内存管理 356

14.1 虚拟内存管理 356

14.2 Linux虚拟内存管理 363

14.3 实例 391

14.4 综合实验的原理 394

14.5 综合实验的实施 395

第15章 内核时钟与定时器 400

15.1 关于时钟和定时器 400

15.2 Linux系统时钟 405

15.3 Linux系统定时器 421

15.4 时钟命令 432

15.5 实验一:一个应用定时器的简单例子 435

15.6 实验二:统计关于进程的时间 437

15.7 实验三:更进一步的进程时间统计 440

第16章 共享内存 450

16.1 进程间通信和共享内存 450

16.2 共享内存的API 452

16.3 共享内存在Linux中的实现 463

第17章 同步机制 494

17.1 同步机制 494

17.2 Linux中几种同步机制的实现 508

17.3 设计我们自己的同步机制 553

第18章 文件系统 561

18.1 文件系统基本概念 561

18.2 文件系统的抽象 565

18.3 VFS文件系统 566

18.4 ext2文件系统 600

18.5 对文件的操作 608

18.6 块读写与页缓存 624

18.7 本章总结 632

18.8 实验:添加一个文件系统 632

18.9 附录:优秀的日志文件系统——ext3 648