实验指南

作业难度

每个作业都标明了其难度:

这些时间是我们预估的大致参考。对于一些可选作业,我们没有现成的解答,难度也只是粗略估计。如果你发现自己在某个作业上花费的时间超出预期,请在piazza上联系我们或者来答疑时间寻求帮助。

一般来说,这些练习不需要写很多代码(几十到几百行),但代码在概念上很复杂,而且细节往往非常重要。因此,请确保你在编写代码之前完成实验的指定阅读材料,仔细阅读相关文件,并查阅文档(RISC-V手册等可在参考页面上找到)。只有当你对作业和解答有了充分的理解后,再开始编码。开始编码时,以小步骤实现你的解决方案(作业通常会建议如何将问题分解为更小的步骤),并在进入下一步之前测试每一步是否有效。

警告:不要在实验截止前一晚才开始做实验;将实验分散在多天内分几次完成,时间效率要高得多。操作系统内核中bug的表现可能令人困惑,可能需要大量思考和仔细调试才能理解和修复。

调试技巧

以下是一些调试建议: 花时间学习上述工具是非常值得的。