笔者从事于机器人软件行业, 在日常开发和学习过程中, 时常接触到Linux. 久而久之,对底层原理产生浓厚兴趣.
相信有很多朋友和我一样, 对Linux底层充满好奇, 同时对于最新的Linux内核的庞杂产生恐惧(2022年的kernel代码就有3000万行).
不过, 操作系统的底层原理都是相通的. 古老版本的Linux内核可以用"麻雀虽小,五脏俱全"来形容. 具有代表性的例子就是Linux 0.11, 总代码行数只有区区1万行. 非常适合新手入门
0.11版的Linux主要由以下5个模块组成(图片参考自 "Linux内核0.11完全注释" ):
- 进程调度模块
- 进程间通信模块
- 内存管理模块
- 文件系统模块
- 网络接口模块
Linux 0.11相关学习资源
学习Linux内核. 笔者推荐哈工大李治军老师的HIT-OSLAB
课程, 配合视频与项目入手学习, 并在调试器下观察Linux内核.
课程链接
项目链接
实验手册
相关书籍
其他推荐
原文链接: https://corsair-cxs.github.io/post/dev/linux/oslab/