[学习]学习&精进
《精进2》这本书对学习 linux 内核也是很有指导意义的。基于这3个培养洞察力的方法,我们来看看如何学习 linux 内核:
1, 一回熟,二回生
把 linux 下你所熟悉的、习以为常的用法陌生化。比如黑洞洞的 terminal 我们经常使用,想想看它的由来、它的实现?
2, 片面的深入观察,每次只深入到一个维度
针对 linux 下某些复杂的代码片段,可以多阅读几次,每次都以不同的维度。比如阅读 netif_receive_if() 代码实现的时候,可以分别从下面的维度或主线去阅读:
(1) 第一遍看核心功能
(2) 第二遍以 skb 生命周期为主线
(3) 第三遍以 lock 为主线
(4) 第四遍以 traceing 为主线
3, 模块化观察,把完整事物拆分成小模块后进行观察
比如,对 linux 内核这个庞然大物的学习,我们就可以按照模块来拆分:
(1) 内存管理模块
(2) 进程调度模块
(3) 网络协议栈模块
(4) 进程间通信模块
(5) 驱动模块,又可拆分成字符设备、块设备、网络设备模块等。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了