万本电子书0元读

万本电子书0元读

顶部广告

Linux内核分析及高级编程电子书

本书以Linux 2.6内核分析和编程应用来讲解高级操作系统设计和应用方面的问题,本书是编著者在多年的教学和科研的基础上编写的,本书结构上每章先是进行内核设计的分析,然后是实践案例的设计,*后是情景分析运用。

售       价:¥

纸质售价:¥22.90购买纸书

49人正在读 | 0人评论 6.2

作       者:吴国伟,李张,任广臣

出  版  社:电子工业出版社

出版时间:2008-01-01

字       数:2415

所属分类: 科技 > 计算机/网络 > 软件系统

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
本书以Linux 2.6内核分析和编程应用来讲解高级操作系统设计和应用方面的问题,本书是编著者在多年的教学和科研的基础上编写的,本书结构上每章先是行内核设计的分析,然后是实践案例的设计,后是情景分析运用。全书共13章内容,内容主要包括Linux内核中程管理、程间同步通信、内存管理、文件系统、I/O设备管理、模块机制、定时器机制等,及利用内核机制行高级编程等。 本书可作为计算机科学与技术、软件工程或相关专业的高级操作系统教材,也可供从事嵌式软件和系统软件设计等的科技人员自学或参考。<br/>
目录展开

Linux内核分析及高级编程

扉页

版权页

内容简介

出版说明

前言

目录

第1章 Linux内核简介

1.1 Linux简介

1.1.1 Linux发展历史

1.1.2 常见的Linux介绍

1.2 Linux内核版本信息

1.2.1 Linux内核版本

1.2.2 GPL相关术语

1.3 Linux内核体系结构

1.4 源代码及组成

1.5 内核编译方法

1.6 小结

1.7 习题

第2章 内核探索工具

2.1 内核数据结构

2.1.1 链表

2.1.2 散列表

2.1.3 抽象接口

2.2 Linux汇编

2.2.1 Linux汇编简介

2.2.2 Linux汇编语法格式

2.2.3 程序实例

2.2.4 Linux汇编系统调用

2.2.5 GCC内联汇编

2.3 Linux C语言

2.3.1 C语言标准

2.3.2 函数库和系统调用

2.3.3 C语言编程风格

2.3.4 库和头文件的保存位置

2.4 GNU/GCC, GNU/GDB

2.4.1 运行gcc

2.4.2 gcc的主要选项

2.4.3 gdb介绍

2.4.4 gdb的常用命令

2.4.5 gdb使用范例

2.5 GNU make工具介绍

2.5.1 GNU make概述

2.5.2 makefile基本结构

2.5.3 makefile变量

2.5.4 GNU make的主要预定义变量

2.5.5 隐含规则

2.5.6 运行make

2.6 内核探测工具

2.6.1 objdump/readelf

2.6.2 hexdump

2.6.3 nm

2.6.4 objcopy

2.6.5 ar

2.7 小结

2.8 习题

第3章 Linux内核引导

3.1 BIOS和Open Firmware

3.1.1 BIOS

3.1.2 Open Firmware

3.2 Bootloader介绍

3.2.1 GRUB

3.2.2 LILO

3.2.3 U-Boot

3.3 系统引导过程

3.3.1 概述

3.3.2 系统启动

3.3.3 第一阶段引导加载程序

3.3.4 第二阶段引导加载程序

3.3.5 内核

3.3.6 init

3.4 小结

3.5 习题

第4章 进程管理

4.1 进程描述符及任务结构体

4.2 进程创建

4.2.1 概述

4.2.2 fork()函数

4.2.3 vfork()函数

4.2.4 clone()函数

4.2.5 do_fork()函数

4.2.6 exec()函数族

4.3 进程终止

4.3.1 概述

4.3.2 进程终止过程

4.3.3 进程的状态

4.4 线程的实现

4.5 工业监控场景应用

4.5.1 场景描述

4.5.2 处理流程

4.5.3 程序范例

4.6 小结

4.7 习题

第5章 进程调度

5.1 调度策略

5.1.1 优先级调度

5.1.2 时间片轮转

5.1.3 三种调度策略

5.2 调度算法分析

5.3 等待队列

5.4 抢占和上下文切换分析

5.4.1 上下文切换

5.4.2 抢占

5.5 调度相关系统调用

5.6 动态更改进程优先级程序实例

5.6.1 场景描述

5.6.2 处理流程

5.6.3 程序范例

5.7 小结

5.8 习题

第6章 系统调用

6.1 API、POSIX及C库

6.2 系统调用及实现分析

6.2.1 基本概念

6.2.2 系统调用简述

6.2.3 系统调用功能模块的初始化

6.2.4 内核服务

6.2.5 实现过程

6.2.6 调用流程实例

6.3 添加系统调用

6.4 增加系统调用场景应用

6.4.1 场景描述

6.4.2 添加流程

6.4.3 计算数值平方的系统调用添加实例

6.5 小结

6.6 习题

第7章 中断机制

7.1 中断

7.1.1 中断分类

7.1.2 中断请求

7.2 中断处理程序

7.3 管理中断的数据结构

7.3.1 结构体irq_desc_t

7.3.2 结构体irqaction

7.3.3 结构体hw_interrupt_type

7.4 注册中断处理程序

7.5 释放中断处理程序

7.6 编写中断处理程序

7.7 中断上下文

7.8 中断处理机制的实现

7.8.1 中断处理总体流程

7.8.2 中断处理具体过程

7.8.3 与中断处理相关的主要函数

7.8.4 下半部机制

7.8.5 软中断

7.8.6 tasklet

7.8.7 工作队列

7.9 中断处理程序场景应用

7.9.1 场景描述

7.9.2 处理流程

7.9.3 程序范例

7.10 小结

7.11 习题

第8章 内核同步机制

8.1 临界区和竞争条件

8.2 原子操作

8.3 自旋锁

8.4 读/写自旋锁

8.5 信号量

8.6 读/写信号量

8.7 完成变量

8.8 BKL

8.9 生产者/消费者场景应用

8.9.1 场景描述

8.9.2 处理流程

8.9.3 程序范例

8.10 小结

8.11 习题

第9章 定时器和时间管理机制

9.1 内核中的时间概念

9.2 节拍率

9.3 jiffies

9.4 硬时钟和定时器

9.4.1 硬时钟

9.4.2 定时器

9.5 时钟中断处理程序

9.6 内核时间管理函数

9.7 定时器

9.7.1 动态定时器机制实现原理

9.7.2 定时器竞争条件

9.7.3 定时器实现

9.8 定时显示信息的场景应用

9.8.1 场景描述

9.8.2 处理流程

9.8.3 程序范例

9.9 小结

9.10 习题

第10章 模块机制

10.1 模块概念

10.2 modutils介绍

10.2.1 insmod的使用

10.2.2 lsmod的使用

10.2.3 rmmod的使用

10.2.4 modprobe的使用

10.2.5 从kerneld到kmod

10.3 模块实现机制分析

10.3.1 基本概念

10.3.2 Linux内核模块实现机制

10.3.3 如何构建自己的模块

10.4 模块编程注意事项

10.4.1 内核中的并发

10.4.2 版本相关性

10.5 模块机制的改变对设备驱动的影响

10.5.1 获取内核版本

10.5.2 模块编译

10.5.3 模块装载时的版本检查

10.5.4 模块的初始化与退出

10.5.5 模块使用计数

10.5.6 模块输出的内核符号

10.5.7 模块的命令行输入参数

10.5.8 模块的许可证声明

10.6 增加模块应用场景

10.6.1 场景描述

10.6.2 处理流程

10.6.3 程序范例

10.7 小结

10.8 习题

第11章 内存管理机制

11.1 基本机制

11.1.1 页

11.1.2 区

11.2 伙伴算法

11.3 slab分配器

11.4 内存分配释放函数

11.5 虚拟内存

11.6 高速缓存

11.7 Linux页表

11.8 进程内存映射

11.9 内存管理应用实例

11.10 小结

11.11 习题

第12章 虚拟文件系统

12.1 和平共处通用文件系统接口

12.2 VFS对象及数据结构

12.3 超级块对象

12.3.1 超级块结构体

12.3.2 超级块操作

12.4 索引节点对象

12.4.1 索引节点结构体

12.4.2 索引节点操作

12.5 目录项对象

12.5.1 目录项结构体

12.5.2 目录项操作

12.6 文件对象

12.6.1 文件对象结构体

12.6.2 文件对象操作

12.7 VFS中挂载与卸载文件系统

12.7.1 登记文件系统

12.7.2 安装文件系统

12.7.3 卸载文件系统

12.8 小结

12.9 习题

第13章 I/O设备管理

13.1 I/O管理机制

13.2 块设备管理

13.2.1 缓冲区和缓冲区头

13.2.2 bio结构体

13.2.3 请求队列

13.3 驱动程序设计

13.3.1 驱动程序框架

13.3.2 块设备驱动程序

13.4 驱动程序设计实例

13.4.1 字符设备驱动程序

13.4.2 块设备驱动程序

13.5 小结

13.6 习题

参考文献

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部