linux内核源码剖析下册pdf高清扫描电子版
分享到:
linux内核源码剖析2011年1月由机械工业出版社出版发行,是一本关于linux内核源码方面的经典教材。小编推荐的这本linux内核源码剖析详细论述了Linux内核2.6.20版本中TCP/IP的实现。书中给出了大量的源代码,通过对源代码的详细注释,帮助读者掌握TCP/IP的实现。linux内核源码剖析根据协议栈层次,从驱动层逐步论述到传输层,包括驱动的实现、接口层的输入输出、IP层的输入输出以及IP选项的处理、邻居子系统、路由、套接口及传输层等内容,全书基本涵盖了网络体系架构全部的知识点。特别是TCP,包括TCP连接的建立和终止、输入与输出,以.及拥塞控制的实现。linux内核源码剖析适用于熟悉Linux的基本使用方法,对Linux内核工作原理以及网络知识有一定的了解,而又极想更深入理解各个机制在Linux中的具体实现的用户,包括应用程序员和嵌入式程序员,以及网络管理员等。相关专业的科研人员在工作中遇到问题时,也可以查阅linux内核源码剖析,理解相关内核部分的实现。此外,计算机相关专业的本科高年级学生和研究生,在学习相关课程(如操作系统、计算机网络等)时,可将linux内核源码剖析作为辅助教程,与理论相结合以便更好地理解相应的知识点。有需要的朋友们欢迎免费下载。
小编温馨提醒:这本书的内容比较多,要注意劳逸结合哦
第1章 预备知识
1.1 应用层配置诊断工具
1.1.1 iputils
1.1.2 net-tools
1.1.3 iproute2
1.2 内核空间与用户空间的接口
1.2.1 proefs
1.2.2 sysctl(proc/sys目录)
1.2.3 sySfs(/sys文件系统)
1.2.4 ioctl系统调用
1.2.5 netlink套接口
1.3 网络I/O加速
1.3.1 TSO/GSO
1.3.2 I/OAT
1.4 其他
1.4.1 slab分配器
1.4.2 RCU
第2章 网络体系结构概述
2.1 引言
2.2 协议简介
2.3 网络架构
2.4 系统调用接口
2.5 协议无关接口
2.6 传输层协议
2.7 套接口缓存
2.8 设备无关接口
2.9 设备驱动程序
2.1 0网络模块源代码组织
第3章 套接口缓存
3.1 引言
3.2 skbufr结构
3.2.1 网络参数和内核数据结构
3.2.2 SKB组织相关的变量
3.2.3 数据存储相关的变量
3.2.4 通用的成员变量
3.2.5 标志性变量
3.2.6 特性相关的成员变量
3.3 skbsharedinfo结构
3.3.1 “零拷贝”技术
3.3.2 对聚合分散I/O数据的支持
3.3.3 对GSO的支持
3.3.4 访问skbsharedinfo结构
3.4 管理函数
3.4.1 SKB的缓存池
3.4.2 分配SKB
3.4.3 释放SKB
3.4 ,4数据预留和对齐
3.4.5 克隆和复制SKB
3.4.6 链表管理函数
3.4.7 添加或删除尾部数据
3.4.8 拆分数据:skbsplit()
3.4.9 重新分配SKI]的线性数据区pskb-expand-head()
3.4.1 0其他函数
第4章 网络模块初始化
4.1 引言
4.2.网络模块初始化顺序
4.3 优化基于宏的标记
4.4 网络设备处理层初始化
第5章 网络设备
5.1 PCI设备
5.1.1 PCI驱动程序相关结构
5.1.2 注册PCI驱动程序
5.2 与网络设备有关的数据结构
5.2.1 netdevice结构
5.2.2 网络设备有关结构的组织
5.2.3 相关函数
5.3 网络设备的注册
5.3.1 设备注册的时机
5.3.2 分配netdevice结构空间
5.3.3网络设备注册过程
5.3.4 注册设备的状态迁移
5.3.5 设备注册状态通知
5.3.6 引用计数
5.4 网络设备的注销
5.4.1 设备注销的时机
5.4.2 网络设备注销过程
5.5 网络设备的启用
5.6 网络设备的禁用
5.7 与电源管理交互
5.7.1 挂起设备
5.7.2 唤醒设备
5.8 侦测连接状态改变
5.8.1 调度处理连接状态改变事件
5.8.2 linkwatch标志
5.9 从用户空间配置设备相关信息
5.9.1 ethtool
5.9.2 媒体独立接口
5.1 0虚拟网络设备
第6章 IP编址
6.1 接口和IP地址
6.1.1 主IP地址、从属IP地址和IP别名
6.1.2 IP地址的组织
6.1.3 indevice结构
6.1.4 inifaddr结构
6.2 函数
6.2.1 inetdev-init()
6.2.2 inetdevdestroy()
6.2.3 inet-select-addr()
6.2.4 inet-confirm-addr()
6.2.5 inet-addr-oniink()
6.2.6 inetdev-by-index()
6.2.7 inet-ifa-byprefix()
6.2.8 inet-abe-len()
6.3 IP地址的设置
6.3.1 netlink接口
6.3.2 inet-insertifa()
6.3.3 inet-del-ifaO
6.4 ioctl
6.5 inetaddrchain通知链
第7章 口层的输入
7.1 系统参数
7.2 接口层的ioctl
7.2.1 SIOCxlFxxx类命令
7.2.2 S10CETHTOOL
7.2.3私有命令
7.3初始化
7.4 softnetdata结构
7.5 NAPI方式
7.5.}网络设备中断例程
7.5.2 网络输入软中断
7.5.3 轮询处理
7.6 非NAPI方式
7.7 接口层输入报文的处理
7.7.1 报文接收例程
7.7.2 netif-receive-skb()
7.7.3 dev-queue-xmit-nit()
7.8 响应CPU状态的变化
7.9 netpoll
7.9.1 netpoll相关结构
7.9.2 注册netpoll实例
7.9.3 netpoll的输入
7.9.4 netpoll的输出
7.9.5 txwork工作队列
7.9.6 netpoll实例:netconsole
第8章 口层的输出
8.1 输出接口
8.1.1 dev-queue-xmit()
8.1.2 dev-hard-start-xmit()
8.1.3 e100的输出接口100-xmit-flame()
8.2 网络输出软中断
8.2.1 netif-schedule()
8.2.2 nettxaction()
8.3 网络设备不支持GSo时的处理
8.3 dev-gso-cb私有控制块
8.3.2 dev-gs0一segment()
8.3.3 skb-gso-segment()
第9章 量控制
9.1 通过流量控制后输出
9.1.1 dev一.queue-xmit()
9.1.2 qdisc-restart()
9.2 构成流量控制的三种元素
9.2.1 排队规则
9.2.2 类
9.2.3 过滤器
9.3默认的FIFO排队规则
9.3.1 pfifo-fast-init(
9.3.2 pfifo-fast-reset()
9.3.pfifo.一fast-enqueue()
9.3.4 pfifo-fast-dequeue()
9.3.pfifo.一fast-requeue()
9.4 netlink的tc接口
9.5 排队规则的创建接口
9.5.1 类的创建接口
9.5.2 过滤器的创建接口
第10章 ntemet协议族
10.1 net-Proto-family结构
10.2 imetprotosw结构
10.3 netprotocol结构
10.4 Intemet协议族的初始化
第11章 P:网际协议
......
第12章 P选项处理
......
第13章 P的分片与组装
......
第14章 CMP:Internet控制报文协议
......
第15章 IP组播......
第16章 IGMP:Internet组管理协议
第17章 邻居子系统
第18章 ARP:地址解析协议
第20章 路由缓存
第21章 路由策略
第22章 套接口层
第23章 套接口I/O
第24章 套接口选项
第25章 传输控制块
第26章 TCP:传输控制协议
第27章 TCP的定时器
第28章 TCP连接的建立
第29章 TCP拥塞控制的实现
第30章 TCP的输出
第31章 TCP的输入
第32章 UDP:用户数据报
第33章 UDP:用户数据报
参考文献
禁用于商业用途!如果您喜欢《linux内核设计与实现原书第3版》,请购买正版,谢谢合作。
爱学习,请到3322软件站查找资源自行下载!
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必在3322软件站选择一款阅读器下载
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
方法二:
1、在手机里下载3322软件站中的阅读器和百度网盘
2、直接将pdf传输到百度网盘
3、用阅读器打开即可阅读
小编温馨提醒:这本书的内容比较多,要注意劳逸结合哦
目录:
前言第1章 预备知识
1.1 应用层配置诊断工具
1.1.1 iputils
1.1.2 net-tools
1.1.3 iproute2
1.2 内核空间与用户空间的接口
1.2.1 proefs
1.2.2 sysctl(proc/sys目录)
1.2.3 sySfs(/sys文件系统)
1.2.4 ioctl系统调用
1.2.5 netlink套接口
1.3 网络I/O加速
1.3.1 TSO/GSO
1.3.2 I/OAT
1.4 其他
1.4.1 slab分配器
1.4.2 RCU
第2章 网络体系结构概述
2.1 引言
2.2 协议简介
2.3 网络架构
2.4 系统调用接口
2.5 协议无关接口
2.6 传输层协议
2.7 套接口缓存
2.8 设备无关接口
2.9 设备驱动程序
2.1 0网络模块源代码组织
第3章 套接口缓存
3.1 引言
3.2 skbufr结构
3.2.1 网络参数和内核数据结构
3.2.2 SKB组织相关的变量
3.2.3 数据存储相关的变量
3.2.4 通用的成员变量
3.2.5 标志性变量
3.2.6 特性相关的成员变量
3.3 skbsharedinfo结构
3.3.1 “零拷贝”技术
3.3.2 对聚合分散I/O数据的支持
3.3.3 对GSO的支持
3.3.4 访问skbsharedinfo结构
3.4 管理函数
3.4.1 SKB的缓存池
3.4.2 分配SKB
3.4.3 释放SKB
3.4 ,4数据预留和对齐
3.4.5 克隆和复制SKB
3.4.6 链表管理函数
3.4.7 添加或删除尾部数据
3.4.8 拆分数据:skbsplit()
3.4.9 重新分配SKI]的线性数据区pskb-expand-head()
3.4.1 0其他函数
第4章 网络模块初始化
4.1 引言
4.2.网络模块初始化顺序
4.3 优化基于宏的标记
4.4 网络设备处理层初始化
第5章 网络设备
5.1 PCI设备
5.1.1 PCI驱动程序相关结构
5.1.2 注册PCI驱动程序
5.2 与网络设备有关的数据结构
5.2.1 netdevice结构
5.2.2 网络设备有关结构的组织
5.2.3 相关函数
5.3 网络设备的注册
5.3.1 设备注册的时机
5.3.2 分配netdevice结构空间
5.3.3网络设备注册过程
5.3.4 注册设备的状态迁移
5.3.5 设备注册状态通知
5.3.6 引用计数
5.4 网络设备的注销
5.4.1 设备注销的时机
5.4.2 网络设备注销过程
5.5 网络设备的启用
5.6 网络设备的禁用
5.7 与电源管理交互
5.7.1 挂起设备
5.7.2 唤醒设备
5.8 侦测连接状态改变
5.8.1 调度处理连接状态改变事件
5.8.2 linkwatch标志
5.9 从用户空间配置设备相关信息
5.9.1 ethtool
5.9.2 媒体独立接口
5.1 0虚拟网络设备
第6章 IP编址
6.1 接口和IP地址
6.1.1 主IP地址、从属IP地址和IP别名
6.1.2 IP地址的组织
6.1.3 indevice结构
6.1.4 inifaddr结构
6.2 函数
6.2.1 inetdev-init()
6.2.2 inetdevdestroy()
6.2.3 inet-select-addr()
6.2.4 inet-confirm-addr()
6.2.5 inet-addr-oniink()
6.2.6 inetdev-by-index()
6.2.7 inet-ifa-byprefix()
6.2.8 inet-abe-len()
6.3 IP地址的设置
6.3.1 netlink接口
6.3.2 inet-insertifa()
6.3.3 inet-del-ifaO
6.4 ioctl
6.5 inetaddrchain通知链
第7章 口层的输入
7.1 系统参数
7.2 接口层的ioctl
7.2.1 SIOCxlFxxx类命令
7.2.2 S10CETHTOOL
7.2.3私有命令
7.3初始化
7.4 softnetdata结构
7.5 NAPI方式
7.5.}网络设备中断例程
7.5.2 网络输入软中断
7.5.3 轮询处理
7.6 非NAPI方式
7.7 接口层输入报文的处理
7.7.1 报文接收例程
7.7.2 netif-receive-skb()
7.7.3 dev-queue-xmit-nit()
7.8 响应CPU状态的变化
7.9 netpoll
7.9.1 netpoll相关结构
7.9.2 注册netpoll实例
7.9.3 netpoll的输入
7.9.4 netpoll的输出
7.9.5 txwork工作队列
7.9.6 netpoll实例:netconsole
第8章 口层的输出
8.1 输出接口
8.1.1 dev-queue-xmit()
8.1.2 dev-hard-start-xmit()
8.1.3 e100的输出接口100-xmit-flame()
8.2 网络输出软中断
8.2.1 netif-schedule()
8.2.2 nettxaction()
8.3 网络设备不支持GSo时的处理
8.3 dev-gso-cb私有控制块
8.3.2 dev-gs0一segment()
8.3.3 skb-gso-segment()
第9章 量控制
9.1 通过流量控制后输出
9.1.1 dev一.queue-xmit()
9.1.2 qdisc-restart()
9.2 构成流量控制的三种元素
9.2.1 排队规则
9.2.2 类
9.2.3 过滤器
9.3默认的FIFO排队规则
9.3.1 pfifo-fast-init(
9.3.2 pfifo-fast-reset()
9.3.pfifo.一fast-enqueue()
9.3.4 pfifo-fast-dequeue()
9.3.pfifo.一fast-requeue()
9.4 netlink的tc接口
9.5 排队规则的创建接口
9.5.1 类的创建接口
9.5.2 过滤器的创建接口
第10章 ntemet协议族
10.1 net-Proto-family结构
10.2 imetprotosw结构
10.3 netprotocol结构
10.4 Intemet协议族的初始化
第11章 P:网际协议
......
第12章 P选项处理
......
第13章 P的分片与组装
......
第14章 CMP:Internet控制报文协议
......
第15章 IP组播......
第16章 IGMP:Internet组管理协议
第17章 邻居子系统
第18章 ARP:地址解析协议
第20章 路由缓存
第21章 路由策略
第22章 套接口层
第23章 套接口I/O
第24章 套接口选项
第25章 传输控制块
第26章 TCP:传输控制协议
第27章 TCP的定时器
第28章 TCP连接的建立
第29章 TCP拥塞控制的实现
第30章 TCP的输出
第31章 TCP的输入
第32章 UDP:用户数据报
第33章 UDP:用户数据报
参考文献
免责声明:
来源于网络,仅用于分享知识,学习和交流!请下载完在24小时内删除。禁用于商业用途!如果您喜欢《linux内核设计与实现原书第3版》,请购买正版,谢谢合作。
爱学习,请到3322软件站查找资源自行下载!
使用说明:
方法一:1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必在3322软件站选择一款阅读器下载
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
方法二:
1、在手机里下载3322软件站中的阅读器和百度网盘
2、直接将pdf传输到百度网盘
3、用阅读器打开即可阅读
展开更多
linux内核源码剖析下册pdf高清扫描电子版下载地址
- 需先下载高速下载器:
- 专用下载:
- 其它下载: