16 内核开发-学习流程书籍推荐

16 内核开发-学习流程书籍推荐

谈谈我最近学习tcpip 内核网络栈协议的一些方法及见解,不一对,但是我自己觉得还是有一些效果的。

针对想了解学习tcpip 内核网络栈协议的同学,推荐一种我正在使用的学习路径

(1)先通体阅读介绍内核模块的书籍

内核里面的哥哥模块千丝万缕,不可能是独立的,所以要想完全理解

  • 《深入理解linux内核架构》
  • 《深入理解LINUX内核(第三版)》
  • 《Linux内核设计与实现》

看过1-2本上面的书籍后,基本上对内核有个大概的了解,里面的模块大体机制应该心中,头脑中构成蓝图,如果还么有构成,可以试着找到自己看的书籍

试着画一画。

(2)阅读tcpip 网络协议栈的数据
  • 《深入理解linux 网络技术内幕》
  • 《Linux内核源码剖析:TCP/IP实现》(上、下册)
  • 《深入浅出Linux tcp-ip协议栈》
  • 《Linux IP协议栈源代码分析》
  • 《追踪Linux.TCP/IP代码运行:基于2.6内核》

建议先阅读(1)中的内容,然后阅读(2)中的内容,这样就能做到先有蓝图,然后能深入某个模块系统阅读

(3) 相关网页学习资料推荐

(1)

Linux Network Stack Walkthrough (2.4.20)
https://jsevy.com/network/Linux_network_stack_walkthrough.html

(2)

Linux Networking Part 1 : Kernel Net Stack

https://amrelhusseiny.github.io/blog/004_linux_0001_understanding_linux_networking/004_linux_0001_understanding_linux_networking_part_1/

DRAFT Linux Networking Part 2 : Firewalling in the Linux Net Stack

https://amrelhusseiny.github.io/blog/004_linux_0001_understanding_linux_networking/004_linux_0001_understanding_linux_networking_part_2/

DRAFT Linux Networking Part 3: DPDK vs SR-IOV
https://amrelhusseiny.github.io/blog/004_linux_0001_understanding_linux_networking/004_linux_0001_understanding_linux_networking_part_3/

(3)

Monitoring and Tuning the Linux Networking Stack: Receiving Data

https://blog.packagecloud.io/eng/2016/06/22/monitoring-tuning-linux-networking-stack-receiving-data/

Monitoring and Tuning the Linux Networking Stack: Sending Data

https://blog.packagecloud.io/eng/2017/02/06/monitoring-tuning-linux-networking-stack-sending-data

我觉得熟读上面材料,对于tcp/ip 网络协议子系统了解至少应该算是能达到入门,或者你天赋异禀,应该也能算是熟练掌握。

后面有比较好的书籍,我会继续更新推荐给大家。

相关推荐
橘子135 小时前
Linux网络基础(一)
linux·网络·arm开发
咯哦哦哦哦18 小时前
vscode arm交叉编译 中 cmakeTools 编译器设置
linux·arm开发·vscode·编辑器
GilgameshJSS1 天前
STM32H743-ARM例程40-U_DISK_IAP
c语言·arm开发·stm32·单片机·嵌入式硬件
XINVRY-FPGA2 天前
XC7Z020-1CLG484I Xilinx AMD FPGA Zynq-7000 SoC
arm开发·嵌入式硬件·网络协议·fpga开发·硬件工程·信号处理·fpga
电鱼智能的电小鱼3 天前
基于电鱼 ARM 边缘网关的智慧工地数据可靠传输方案——断点续传 + 4G/5G冗余通信,保障数据完整上传
arm开发·人工智能·嵌入式硬件·深度学习·5g·机器学习
范纹杉想快点毕业3 天前
12个月嵌入式进阶计划ZYNQ 系列芯片嵌入式与硬件系统知识学习全计划(基于国内视频资源)
c语言·arm开发·单片机·嵌入式硬件·学习·fpga开发·音视频
wanhengidc3 天前
云手机畅玩 梦幻西游
运维·服务器·arm开发·智能手机·自动化
z202305083 天前
linux之arm SMMUv3 故障和错误(4)
linux·运维·arm开发
攒钱植发3 天前
嵌入式Linux——解密 ARM 性能优化:LDR 未命中时,为何 STR 还能“插队”?
linux·arm开发·c++·性能优化
小尧嵌入式4 天前
STM32启动汇编文件详解及启动逻辑
汇编·arm开发·stm32·单片机