课程概况
北航操作系统的课程情况是这样的:
- 实验
- 课下。形式:发布一份代码(代码量非常大),代码的部分位置挖空,由你自己补充完整,然后提交到课程网站上。课下的全部测试用例都会公布。而且因为大部分代码由官方提供,且测试数据非常强,因此较少出现课下bug带到课上的情况。
- 课上。形式:2小时,会有两个题目,exam和extra,开头几个lab只有一次课上,之后的几个lab会有两次课上。lab6无课上,对应的时间段改为补充测试,之前因为某些原因没能参加某次课上的可申请参与该次补充测试来弥补。exam得分占总分比重要比extra多很多,理论上exam难度要比extra低一些,但是实际上并不能保证百分百是这样。题目形式是,要求你实现某个功能,同时会提供给你大概的实现步骤,跟着步骤做即可。
- 实验报告。提交截止时间为当前lab最后一次课上结束的一天后。在spoc上提交,强烈强烈建议定个闹钟!忘交实验报告扣的分等价于extra0分,等价于总分扣0.5分,非常疼,非常疼!
- 挑战性任务(必选!不是选做!不做扣6分!)。随着课程的推进,会逐渐开放各个挑战性任务,从中选取一个完成即可。建议不要着急。有两种任务,移植任务和普通任务。选择移植任务很困难,但是是成为助教的一个隐形条件。普通任务相对简单,可以先等等,看哪个任务做的最多就去做哪个(我选的是lab6的shell增强)。普通任务有对应的评测机,通过评测就可以满分。移植任务则需要答辩。
- 理论
- 平时
- 期中考试。分数占比很小,可忽略不计。考试基本只靠往年期末或者考研的原题。
- 作业。在spoc上发布和提交。强烈建议定好闹钟,提醒自己每个周看一眼spoc,确认是否发了新作业!
- 期末考试。占总分40分。没什么好说的,你6特有的理论与实验关系不大。多做做往年题,多做做考研题。
- 平时
课程资料
学习建议
- 推荐的课下学习方法:每次发布新lab后,推荐学习顺序为:我力推的实验笔记->指导书->开始做
- 不建议莽撞自己做,建议直接比着学长的代码做。不要怕查重。比起自己做完,能够理解代码是最重要的
- 实验会提供远程平台,建议课下的时候自己在本地用vscode写代码然后push上去,在远程平台跑结果。课上的时候用gitlab仓库的在线ide。
- 不要轻视期末考试,认真准备。