《Linux内核修炼之道》

图书作者:华清远见 丛书名称: 嵌入式开发系列 出版日期:2010年7月 PDF电子版免费下载

编辑推荐理由

推荐评分:5.0分

多年嵌入式人才培养及项目研发经验总结

数百家企业嵌入式研发岗位人才需求汇总

数十所嵌入式专业大学院校教学现状调研

侧重实践及案例分析并辅以代码加以讲解

图书简介

本书重点介绍linux内核工作原理以及学习方法。将linux内核的修炼之道总结为四个层次:“全面了解抓基本,兴趣导向深钻研,融入社区做贡献,坚持坚持再坚持”。第一层次目的是对linux以及内核有个全面的认识和了解,掌握linux内核源代码的分析方法。第二个层次讨论了内核中系统初始化、系统调用、中断处理、进程管理及调度、内存管理、文件系统以及设备驱动等主要部分,目的是希望读者以兴趣为导向,寻找一个子系统或模块,对其代码深入钻研和分析。第三个层次介绍了内核开发与调试的一些基本信息,目的是希望读者能够融入到内核的开发社区,做出自己的贡献。第四个层次浓缩为两个字——坚持。
  • 本书语言通俗易懂,内容覆盖了内核的学习方法到内核设计与实现等各方面内容,能够带领读者快速走入linux内核的世界,适合对linux内核学习茫然的初学者,也适合各类希望深入理解linux内核的读者。

图书目录

  • ※ 第1章 初识linux 

  • 1.1 linux史记 
  • 1.1.1 linux诞生记 
  • 1.1.2 泰坦尼克的狂潮 
  • 1.1.3 提前发生的革命 
  • 1.1.4 和平、爱情和linux 
  • 1.1.5 ubuntu 4.10 
  • 1.1.6 richard stallman的征婚启事 
  • 1.1.7 一封公开信 
  • 1.1.8 首款android手机 
  • 1.1.9 linux信用卡 
  • 1.2 内核的版本 
  • 1.3 获取内核源码 
  • 1.4 linux发行版 
  • 1.4.1 软件包管理器 
  • 1.4.2 流行的发行版 
  • 1.4.3 选择linux发行版 
  • ※ 第2章 配置与编译内核 

  • 2.1 配置内核 
  • 2.1.1 几种配置方式 
  • 2.1.2 .config文件 
  • 2.1.3 配置选项详解 
  • 2.2 编译内核 
  • 2.2.1 准备工作 
  • 2.2.2 如何为内核打补丁
  • 2.2.3 编译步骤 
  • 2.2.4 文档的编译 
  • 2.2.5 编译小技巧 
  • 2.3 自由软件的编译与安装
  • 2.3.1 发布时的组织结构 
  • 2.3.2 配置 
  • 2.3.3 编译 
  • 2.3.4 安装 
  • ※ 第3章 浏览内核源代码

  • 3.1 内核学习的技术基础 
  • 3.2 内核体系结构 
  • 3.3 内核源码目录结构 
  • 3.4 浏览代码的工具 
  • 3.4.1 source insight 
  • 3.4.2 vim+cscope 
  • 3.4.3 lxr 
  • 3.5 内核代码的特点
  • 3.5.1 gcc扩展 
  • 3.5.2 内嵌汇编 
  • 3.6 内核中的链表 
  • 3.7 kconfig和makefile 
  • 3.7.1 kconfig结构 
  • 3.7.2 利用kconfig和makefile寻找目标代码
  • 3.8 代码分析示例 
  • 3.8.1 分析readme 
  • 3.8.2 分析kconfig和makefile
  • 3.8.3 寻找初始化函数 
  • ※ 第4章 系统初始化 

  • 4.1 引导过程 
  • 4.2 内核初始化 
  • 4.2.1 start_kernel函数
  • 4.2.2 reset_init函数 
  • 4.2.3 kernel_init函数 
  • 4.2.4 init_post函数 
  • 4.3 init进程 
  • 4.4 内核选项解析 
  • 4.4.1 内核选项 
  • 4.4.2 注册内核选项 
  • 4.4.3 两次解析 
  • 4.5 子系统的初始化 
  • 4.5.1 do_initcalls()函数
  • 4.5.2 initcall.init节 
  • 4.5.3 分析示例 
  • ※ 第5章 系统调用 

  • 5.1 系统调用概述 
  • 5.1.1 系统调用、posix、c库、系统命令和内核函数 
  • 5.1.2 系统调用表 
  • 5.1.3 系统调用号 
  • 5.1.4 系统调用服务例程
  • 5.1.5 如何使用系统调用 
  • 5.1.6 为什么需要系统调用 
  • 5.2 系统调用执行过程 
  • 5.3 系统调用示例 
  • 5.3.1 sys_dup 
  • 5.3.2 sys_reboot 
  • 5.4 系统调用的实现 
  • 5.4.1 如何实现一个新的系统调用
  • 5.4.2 什么时候需要添加新的系统调用
  • ※ 第6章 中断与中断处理 

  • ※ 第7章 进程管理 

  • ※ 第8章 调度 

  • ※ 第9章 内存管理 

  • ※ 第10章 文件系统 

  • ※ 第11章 设备驱动 

  • ※ 第12章 内核开发基础 

  • ※ 第13章 调试