类似推荐
编辑推荐
本书对早期的Linux操作系统内核(v0.11)全部源代码文件进行了详细的注释和说明。
内容简介
本书首先介绍了Linux系统的发展历史,着重说明了各个内核版本之间的重要区别,给出了选择0.11版作为研究对象的原因;然后依据内核源代码的组织结构对所有代码进行了详细注释。在注释的同时,还介绍了读者应该了解的相关知识,并给出了相关的硬件信息。本书还介绍了内核源代码的组织结构及相互关系。
本书适合作为计算机专业学生学习操作系统课程的实践教材和参考书,也适合Linux操作系统爱好者自学,还可供具有一定基础的技术人员作为嵌入式开发应用的参考书。
作者简介
编著者赵炯,工学博士,计算机专家,Intel公司访问学者,国际计算机仿真协会、上海市通信学会会员。研究方向为计算机通信。
曾经为本科、硕士和博士研究生开设《计算机网络》《计算机通信技术》《计算机通信与工控网络》《微型计算机》和《计算机原理》等课程。
参与国家自然科学基金项目“系统芯片在线测试与容错技术研究”和上海市自然科学基金“基于节点主动控制的大规模复杂输送系统控制模型研究”等工作。
章节目录
版权信息
内容提要
出版说明
前言
第1章 概述
1.1 Linux的诞生和发展
1.1.1 UNIX、MINIX、GNU和POSIX
1.1.2 Linux操作系统的诞生和版本的变迁
1.2 内容综述
1.3 本章小结
1.4 习题
第2章 Linux内核体系结构
2.1 Linux内核模式和体系结构
2.2 Linux中断机制
2.3 Linux系统定时
2.4 Linux内核进程控制
2.4.1 任务数据结构
2.4.2 进程运行状态
2.4.3 进程初始化
2.4.4 创建新进程
2.4.5 进程调度
2.4.6 终止进程
2.5 Linux内核对内存的使用方法
2.6 Linux系统中堆栈的使用方法
2.6.1 初始化阶段
2.6.2 任务的堆栈
2.6.3 内核态与用户态堆栈之间的切换
2.7 Linux内核源代码的目录结构
2.7.1 引导启动程序目录boot
2.7.2 文件系统目录fs
2.7.3 头文件主目录include
2.7.4 内核初始化程序目录init
2.7.5 内核程序主目录kernel
2.7.6 内核库函数目录lib
2.7.7 内存管理程序目录mm
2.7.8 编译内核工具程序目录tools
2.8 内核系统与用户程序的关系
2.9 Linux内核的编译实验环境
2.10 linux/Makefile文件
2.11 本章小结
2.12 习题
第3章 内核引导启动程序
3.1 总体功能描述
3.2 程序分析
3.2.1 bootsect.s程序
3.2.2 setup.s程序
3.2.3 head.s程序
3.3 本章小结
3.4 习题
第4章 内核初始化过程
4.1 main.c程序分析
4.2 本章小结
4.3 习题
第5章 进程调度与系统调用
5.1 总体功能描述
5.1.1 中断处理程序
5.1.2 系统调用处理相关程序
5.2 程序分析
5.2.1 asm.s程序
5.2.2 traps.c程序
5.2.3 system_call.s程序
5.2.4 mktime.c程序
5.2.5 sched.c程序
5.2.6 signal.c程序
5.2.7 exit.c程序
5.2.8 fork.c程序
5.2.9 sys.c程序
5.2.10 vsprintf.c程序
5.2.11 printk.c程序
5.2.12 panic.c程序
5.3 本章小结
5.4 习题
第6章 输入输出系统
6.1 总体功能描述
6.1.1 块设备请求项和请求队列
6.1.2 块设备操作方式
6.2 程序分析
6.2.1 blk.h文件
6.2.2 hd.c程序
6.2.3 ll_rw_blk.c程序
6.2.4 ramdisk.c程序
6.2.5 floppy.c程序
6.3 本章小结
6.4 习题
第7章 输入输出系统
7.1 总体功能描述
7.1.1 终端驱动程序基本原理
7.1.2 终端基本数据结构
7.1.3 规范模式和非规范模式
7.1.4 控制台驱动程序
7.1.5 串行终端驱动程序
7.1.6 终端驱动程序接口
7.2 程序分析
7.2.1 keyboard.S程序
7.2.2 console.c程序
7.2.3 serial.c程序
7.2.4 rs_io.s程序
7.2.5 tty_io.c程序
7.2.6 tty ioctl.c程序
7.3 本章小结
7.4 习题
第8章 数学协处理器
8.1 math_emulate.c程序分析
8.2 本章小结
8.3 习题
第9章 文件系统
9.1 总体功能描述
9.1.1 MINIX文件系统
9.1.2 高速缓冲区
9.1.3 文件系统底层函数
9.1.4 文件中数据的访问操作
9.2 程序分析
9.2.1 buffer.c程序
9.2.2 bitmap.c程序
9.2.3 inode.c程序
9.2.4 super.c程序
9.2.5 namei.c程序
9.2.6 file_table.c程序
9.2.7 block_dev.c程序
9.2.8 file_dev.c程序
9.2.9 pipe.c程序
9.2.10 char_dev.c程序
9.2.11 read_write.c程序
9.2.12 truncate.c程序
9.2.13 open.c程序
9.2.14 exec.c程序
9.2.15 stat.c程序
9.2.16 fcntl.c程序
9.2.17 ioctl.c程序
9.3 本章小结
9.4 习题
第10章 内存管理
10.1 总体功能描述
10.1.1 内存分页管理机制
10.1.2 Linux中内存的管理和分配
10.1.3 写时复制机制
10.2 程序分析
10.2.1 memory.c程序
10.2.2 page.s程序
10.3 本章小结
10.4 习题
第11章 包含文件
11.1 程序分析
11.1.1 include/目录下的文件
11.1.2 a.out.h文件
11.1.3 const.h文件
11.1.4 ctype.h文件
11.1.5 errno.h文件
11.1.6 fcntl.h文件
11.1.7 signal.h文件
11.1.8 stdarg.h文件
11.1.9 stddef.h文件
11.1.10 string.h文件
11.1.11 termios.h文件
11.1.12 time.h文件
11.1.13 unistd.h文件
11.1.14 utime.h文件
11.1.15 include/asm/目录下的文件
11.1.16 io.h文件
11.1.17 memory.h文件
11.1.18 segment.h文件
11.1.19 system.h文件
11.1.20 include/linux/目录下的文件
11.1.21 config.h文件
11.1.22 fdreg.h头文件
11.1.23 fs.h文件
11.1.24 hdreg.h文件
11.2.25 head.h文件
11.1.26 kernel.h文件
11.1.27 mm.h文件
11.1.28 sched.h文件
11.1.29 sys.h文件
11.1.30 tty.h文件
11.1.31 include/sys/目录中的文件
11.1.32 stat.h文件
11.1.33 times.h文件
11.1.34 types.h文件
11.1.35 utsname.h文件
11.1.36 wait.h文件
11.2 本章小结
11.3 习题
第12章 内核库文件
12.1 程序分析
12.1.1 _exit.c程序
12.1.2 close.c程序
12.1.3 ctype.c程序
12.1.4 dup.c程序
12.1.5 errno.c程序
12.1.6 execve.c程序
12.1.7 malloc.c程序
12.1.8 open.c程序
12.1.9 setsid.c程序
12.1.10 string.c程序
12.1.11 wait.c程序
12.1.12 write.c程序
12.2 本章小结
12.3 习题
第13章 内核组建工具
13.1 build.c程序分析
13.2 本章小结
13.3 习题
参考文献
Linux内核完全注释(20周年版·第2版)是2023年由机械工业出版社出版,作者赵炯 编著。
得书感谢您对《Linux内核完全注释(20周年版·第2版)》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。