yanfeizhang / coder-kung-fu
开发内功修炼
AI Architecture Analysis
This repository is indexed by RepoMind. By analyzing yanfeizhang/coder-kung-fu in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.
Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.
Repository Summary (README)
Preview我们所有的开发同学每时每刻都在使用内核、都在使用硬件。所以能正确理解内核是怎么工作的、硬件的性能指标大概是多少,这些对于高阶的开发工程师来说非常重要。想成为技术大牛,扎实练习内功是必经之路!
飞哥的开发内功修炼从 CPU、内存、磁盘、网络四大模块进行深度思考,总结出来,在这里分享给积极上进的你!
另外飞哥目前已经出版了两本书,名字分别叫做《深入理解Linux进程与内存》和《深入理解Linux网络》。这两本书的市场接受度非常的高,都是在首发当天就斩获了京东科技类图书的第一名。希望这两本书能帮大家驾驭技术,掌舵人生!

另外大家也可以加飞哥微信(zhangyanfei748528)进读者交流群,或者互相围观朋友圈。
本 repo 持续更新ing...
新文置顶:
一、硬件原理篇
1.1 CPU 原理
- 你以为你的多核CPU都是真核吗?多核“假象”
- 听说你只知内存,而不知缓存?CPU表示很伤心!
- TLB缓存是个神马鬼,如何查看TLB miss?
- 深入了解 CPU 的型号、代际架构与微架构
- 聊聊近些年 CPU 在微架构、IO 速率上的演进过程
- 深入了解服务器 CPU 的型号、代际、片内与片间互联架构
- 个人电脑上CPU和服务器上的CPU都有哪些区别?
1.2 内存原理
- 带你深入理解内存对齐最底层原理
- 内存随机也比顺序访问慢,带你深入理解内存IO过程
- 从DDR到DDR4,内存核心频率其实基本上就没太大的进步
- 看懂服务器 CPU 内存支持,学会计算内存带宽
- 为什么服务器内存硬件上的黑色颗粒这么多?
- 理解内存的Rank、位宽以及内存颗粒内部结构
- 服务器之 ECC 内存的工作原理
- Linux 下用 dmidecode 探秘服务器内存硬件
1.3 GPU 原理
1.4 硬盘原理
二、内存管理篇
2.1 内核内存管理模块启动过程
2.2 内核内存管理
- 说出来你可能不信,内核这家伙在内存的使用上给自己开了个小灶!
- 明明还有大量内存,为啥报错“无法分配内存”?
- 从进程栈内存底层原理到Segmentation fault报错
- 聊聊 Linux 线程栈内存的底层实现原理!
- 聊聊跨进程共享内存的内部工作原理
2.3 语言运行时内存管理
2.4 内存性能测试
2.5 内存性能优化实例
三、进程管理篇
3.1 进程管理
- Linux进程是如何创建出来的?
- 你写的代码是如何跑起来的?
- 聊聊Linux中线程和进程的联系与区别!
- 你的新进程是如何被内核调度执行到的?
- Linux 中的负载高低和 CPU 开销并不完全对应
- 为什么新版内核将进程pid管理从bitmap替换成了radix-tree? <font color="#dd0000">(:cn:新)</font>
3.2 内核CPU开销浅析
3.3 用户态CPU开销分析
3.4 函数调用
3.5 信号管理
3.6 CPU性能优化
四、网络管理篇
4.1 内核收发包原理
- 🔥图解Linux网络包接收过程
- 🔥25 张图,一万字,拆解 Linux 网络包发送过程
- Linux网络包接收过程的监控与调优
- 🔥127.0.0.1 之本机网络通信过程知多少 ?!
- 本机网络IO之Unix Domain Socket与普通socket的性能对比 实验使用源码
4.2 内核如何与用户进程协作
- 图解 | 深入理解高性能网络开发路上的绊脚石 - 同步阻塞网络 IO
- 🔥图解 | 深入揭秘 epoll 是如何实现 IO 多路复用的!
- 漫画 | 看进程小 P 讲述它的网络性能故事!
- 在 golang 中是如何对 epoll 进行封装的?
- 万字多图,搞懂 Nginx 高性能网络工作原理!
- 单线程 Redis 如何做到每秒数万 QPS 的超高处理能力!
- Redis 6 中的多线程实现方式比我预期的要差
- 剖析Netty内部网络实现原理
4.3 TCP之三次握手
- 为什么服务端程序都需要先 listen 一下?
- 深入理解Linux端口重用这一特性 配套实验源码
- 绑定特殊 IP 之 0.0.0.0 的内部工作原理
- TCP连接中客户端的端口号是如何确定的?
- 能将三次握手理解到这个深度,面试官拍案叫绝!
- 深入解析常见三次握手异常
- 如何正确查看线上半/全连接队列溢出情况?
4.4 TCP连接时间开销、内存开销
4.5 单机百万并发系列
4.6 性能优化
4.6 电子书
五、文件系统篇
3.1 文件系统浅析
3.2 文件读写性能
六、容器虚拟化原理
6.1 容器中的进程
6.2 容器中的内存 待添加
6.3 容器中的网络
- 轻松理解 Docker 网络虚拟化基础之 veth 设备! <font color="#dd0000">(:cn:新)</font>
- 聊聊 Linux 上软件实现的“交换机” - Bridge! 配套实验源码 <font color="#dd0000">(:cn:新)</font>
- 彻底弄懂 Linux 网络命名空间 配套实验源码 <font color="#dd0000">(:cn:新)</font>
- 手工模拟实现 Docker 容器网络! 配套实验源码 <font color="#dd0000">(:cn:新)</font>
- 理解 iptables 原理
- 天天讲路由,那 Linux 路由到底咋实现的!?
七、性能观测
7.1 进程性能观测
7.2 网络性能观测
八、语言和框架
- 深入剖析 Golang 程序启动原理 - 从 ELF 入口点到GMP初始化到执行 main! <font color="#dd0000">(:cn:新)</font>
- 峰值 QPS 50 万 +,性能优异的网络框架开源力作 Sogou Workflow!
九、答读者问
- 今天聊聊飞哥是怎么阅读内核源码的
- 答读者问,飞哥能否给推荐几本硬核技术书?
- 程序员完全没有时间提升自己该怎么办?
- 写给内功修炼读者的一封信!
- 我是怎么样写出开发内功修炼的?秘密都在这里!
- 给想成长为高级别开发同学的七条建议
十、视频体系
目前应读者的诉求,我把我多年在系统领域积累的知识也整理成了一门成体系的视频课。在知识星球上更新。 内容总共分为如下几大块,覆盖了系统领域的各种硬核原理知识,也包含了能帮助已工作的同学提升性能优化能力。
- 硬件原理 (已更新)
- 内存管理 (已更新)
- 进程管理 (已更新)
- 网络管理 (已更新)
- 容器原理 (正在更新中...)
- 性能观测 (准备中)
- 性能优化 (准备中)
对这些视频内容感兴趣的同学可以通过下方二维码,或者在微信公众号「开发内功修炼」中回复「配套视频」观看。
公众号二维码
敬请扫码关注微信公众号「开发内功修炼」,及时获得最新硬核文章!

为了方便大家阅读,本 Github 的网络篇核心内容整理成了 PDF 电子书,也即将出版。该书好评众多,欢迎大家下载! 百度网盘地址 密码:q79d
如若网盘地址出问题,也可以通过微信(zhangyanfei748528)找飞哥,我直接发你!