Lecture Companion¶
Lecture Companion 是面向同学们的一组补充读物。它的定位不是替代实验讲义,也不是必须完成的固定作业,而是帮助你把课堂 PPT 里的概念和仓库中的真实代码对应起来。
阅读定位
本栏目下的内容属于选读型补充材料:
- 不要求所有同学都必须逐篇完成;
- 不作为实验的硬性提交项;
- 更适合在你已经能编译、运行并初步调试
NexOS后使用。
适合哪些学生¶
如果你属于下面任意一种情况,这个栏目会比较有帮助:
- 你能跟上课堂概念,但看到代码时还不清楚这些概念具体落在什么位置;
- 你做实验时经常“会改代码,但讲不清原理”,希望把实现路径串起来;
- 你想把
PPT中的章节内容和NexOS代码仓库建立一一对应关系; - 你打算进一步阅读内核实现细节,为后续实验、复习或面试准备打基础;
- 你对操作系统课程本身比较感兴趣,希望比实验要求再多走一步。
不太适合什么时候看¶
如果你当前还处在下面这些阶段,建议先不用急着读这里:
- 还没有完成基础环境配置,暂时不能正常运行
NexOS; - 还在熟悉最基本的实验流程,例如编译、打包、启动和调试;
- 当前主要目标是先把必做实验要求完成。
建议的使用方式
最好的使用方式不是从头到尾“刷读物”,而是带着问题来读。例如:
- 课堂上听到
fork、exec、trap这些词时,想知道它们在代码里分别出现在哪里; - 做实验时改到了某个系统调用,想顺着用户态到内核态完整追一遍;
- 复习时希望把某一章
PPT压缩成一条更接近真实实现的代码阅读路径。
当前内容¶
目前本栏目已经提供的内容如下:
后续还会继续加入更多“PPT 章节 + 代码阅读路径”对应的补充读物。
阅读前提¶
建议在阅读前至少完成以下准备:
并确保你已经能够:
- 进入系统
Shell; - 运行基础用户程序;
- 大致知道用户态代码和内核态代码分别位于哪些目录。
阅读时的边界提醒¶
请结合当前仓库实现理解
Lecture Companion 的内容会尽量贴合当前课程仓库,但它解释的是“当前实现里已经存在或能够观察到的部分”,不是对操作系统理论章节的完整覆盖。
当前仓库里还存在一些尚未完全接入或尚未实现的部分,阅读时需要注意(后续也会说明)。