操作系统原理与设计(李永坤, 吴思) 2022春  课程号:01117402
2022春  课程号:01117402
8.9(9人评价)
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:很多
选课类别:计划 教学类型:理论实验课
课程类别:本科计划内课程 开课单位:计算机科学与技术系
课程层次:专业核心   学分:4.0
简介 最后更新:

操作系统对计算机系统资源实施管理,是所有其他软件与计算机硬件的唯一接口,所有用户在使用计算机时都要得到操作系统提供的服务。因此本课程的目的是使学生通过本课程的学习,理解操作系统的基本概念和主要功能,通过实例讲解,掌握常用操作系统(如Unix、Linux)中的关键技术,为学生以后的学习、工作和研究打下基础。

排序 学期

评分 评分 9条点评

原生生物 2022春
  • 课程难度:困难
  • 作业多少:很多
  • 给分好坏:一般
  • 收获大小:很多
  • 难度:困难
  • 作业:很多
  • 给分:一般
  • 收获:很多

*点评之前的注:22春这门课虽然挂名了两个老师,事实上讲课是完全由李老师负责的,实验部分应该是主要由助教设计,可以参考李老师的操作系统下Silence助教的评课

这门课评起来很挣扎,和学习的体验一样挣扎。

先说正面结论,作为及格就行,不在乎具体分数的辅修人,非常建议选这门课。某种意义上,这门课的体验与数院🚀老师的拓扑学H是一致的(当前排行榜好评榜一课程):

1、ppt写得非常好,虽然全英文构成了一些阻碍,但这样的从动机讲到最初设计再讲一步步优化的ppt实属人间之鉴,把或许有点偏文的东西描述得既清晰又有趣。

2、关于老师讲课,本人时常在第一排摸鱼,不过偶有听到的一点东西也能感觉到老师深厚的讲课功底。老师补充的一些有关科研的内容也是真心实意地为同学将来考虑,这份诚意还是能感受得到的。

3、作业的设计也很棒,总体任务量不多,但可以快速回顾这段的课程内容,每次做作业都觉得复习(预习)得挺爽。[这里有一个插曲,助教们改作业是分组的,不过为了平衡会在试改后统一标准整体批改。部分试改后,同学反馈有的地方标准过严,助教们也吸纳了这个建议,采取了更合理的标准。考试的改卷也有类似的过程,在这点上把班级的公平性做得很好,不会因为分组产生优劣。]

4、实验的任务量非常大(这里的三个字写得比较轻飘飘,但如果把每一个通宵都列出来又过于麻烦,于是就写这三个字吧),也并不容易(这个“不容易”同上),但都是实打实可以加深理解的东西,每次做完实验都会感觉收获良多。助教精心设计的实验文档补充了课程的内容,也扫平了不少障碍。

5、助教非常认真负责并且愿意关心同学。虽然大家群里会吐槽这个那个(真正的问题所在会在之后详细解释),就我的体验而言,这门课的助教完全不装死并且有问题都会尽力帮忙解决。包括和同学的沟通也很及时,愿意为同学做实验扫清一些障碍,接收大家反馈的问题(Lab3的实验文档是最好的正面例子)。

尽管如此,我仍然必须说,这门课如果考虑考试和给分, 并不令人愉快 。那么,这门课的缺点在哪里呢?我个人的评价是,它败就败在不是一门H课。

要知道,🚀的拓扑H在开课时有大概五六十个人,在期中时便只剩38个人了。如果问退课的人为什么退,回答也很简单:“学不来”。可是,作为一门不分方向的计科同学和辅修同学的「必修」列表上的专业课,无论是什么水平的同学都必须选择,也不能退掉。不仅如此,据了解,这学期的实验量和难度都突然加码,总负担比起往届可能至少是两倍。在事先不知道这一点的情况下,大家被“骗”进了这个班,发现实验做不出、学不来的时候已经晚了。

这时还能怎么办呢?硬着头皮做下去呗。然而,在实验的难度很多人无法完成的情况下,又会分为三种解决方法:第一,摆烂,放弃,做好及格or不及格重修打算。第二,努力把自己能做的部分做好,然后拿一个相对自己的努力完全不值的成绩(下一部分会细说)。第三,摆烂,然后实验结束前随便找个人的抄一下,拿到高分。这里我实在很想阴阳怪气一下,「猜猜那么难的实验完成率能上70%背后,选第三种方法的人有多少捏」,不过我们还是不要以恶意揣度人。尽管这某种意义上也是为了自己的成绩“被逼无奈”,但它真正伤害的是所有尽力完成的人。很遗憾的是,当前并没能做到很好地鉴别出实验抄袭,于是不公平就越发明显了,大家的抱怨很大程度也来源于此。

此外,这是一门限制优秀率的课,因此大家自然会对比:在付出的工作量比隔壁多很多时,最终的成绩却无法体现,这部分工作量似乎就成了无意义的“内卷”。占据成绩非常大头的部分是考试,但不管解释地多么冠冕堂皇,一个以背书背ppt为绝对主体的考试也很难体现出真正的水平,反而可能一个失误就导致实验所花的努力白费,喜提卡绩。此处还得提到关于给分的另一件事:哪怕有着优秀率的限制,以大家的付出,也理应获得分段的尽力调高,但最后看到的只是迟交扣分的冰冷,让尽力完成的人反而不如投机取巧者。

说到这里,其实问题就已明显了:成绩无法体现水平的公平性考量、工作量无法体现在成绩的付出收获比考量与难度无法为大部分人接受的学习收获考量,成为了大家骂这门课的主要原因。

但是,我更想提及的是,在这些“主要原因”背后藏着的一个更深的矛盾,理念的差异。

在大家提出减轻实验负担、适当降低难度时,无论是老师还是助教都给出了一个解释,叫作“实验的目的之一就是拉开一定的区分度”。且不提由于抄袭等问题,这件事事实上并没有完成。哪怕完成了,它真的就如说得一般合理吗?

在🚀老师的很多课程作业上(这里的复杂度和难度基本都可以对标操作系统的实验,上学期在🚀作业上花的时间大概比操作系统作业实验还要多),都会有一些Not Required[不要求完成]的题目。注意,这里的不要求完成就是真正的不要求完成,基本不会在考试中出现,做出来也不会有额外的加分,只是放在那里,大家如果愿意可以去写。就难度而言,普通作业的难度是保证大部分认真学习的人可以完成的,而这些不要求完成的题目就困难不少,可能还需要搜索各种资料。[虽然有踩一捧一之嫌,但这里还是想一提,🚀老师也带过非H课的课,仍然能收获全满分的评课分数,就是依靠拔高但不过分要求与充分好的给分。]

以功利的视角看,这件事简直不可理喻:不要求完成,完成了也没任何用的题目,怎么会有人去做?事实上,恰恰是真心希望能把这门课掌握的同学会去努力啃完这些,而这部分同学的成绩也往往并不会差。我们自然可以说,“我们理应在作业上拉开区分度”,于是给每道题设置一点加分,学期结束后累计。可这样下去,反而会成为某种“军备竞赛”,无论是不是喜欢都被强拉着在这上面浪费大量时间,让本来应该是快乐的深入钻研暴露出种种丑态。如果最后还没有好的成绩,大概只会有更多的不满。

在助教的评课中说到,实验设计是让大多数人能完成的。如果真的能做到这点,自然是好的实验设计,但事实上呢?——非常重要的是,这里的大多数能完成,不应该是对于纸面的完成率造成区分度的考量(因为完成率的水分前面已经说过了),而是 到底多少人能基本靠自己写出实验,并能从中学到东西、对课堂上的知识构成补充

在计算机组成原理的课程群里,我曾看到过同学转载的似乎是北大树洞里的一篇文章。里面有一段话让我印象深刻,大致是,教育应当是一种 诚意 ,至少不该是一种 恶意 。很遗憾,目前的教学中(就我的体验而言,尤其是计算机学院)充满了这样的恶意。

一个很经典的吐槽是,「不会教你怎么飞,但只想要会飞的人」。在我看来,这毫无疑问是恶意的体现。就以实验为例,除了关心「我们让大部分人完成以外」,更值得关心的其实是,对于没能完成的人,能收获什么。如果只是付出时间精力对着文档发呆然后沦为一个「区分度」,似乎就带着那么一些恶意了。

当然,这些问题并不是无法解决,最关键还是在于关于工作量和难度的更合理设计。大家掌握的东西更多固然是好事,但不应把这样的更多化为对所有人的要求(哪怕是附加,事实上也是某种意义上对所有人的要求了)。之前某闲聊群中提出过一个悖论,如果实验难度降低,均分或许还会更低些,因为更多人会选择自己完成能做的部分,而不是去copy其他人的全部代码。

说到底,老师与助教的想法得与大部分人的实际接受情况平衡。一味将觉得有趣与合适的内容都填进去,只会让大家在囫囵中难以下咽——哪怕每一味食材都十分精致。

最后,给将来可能学习这门课的同学一点建议[ 以下建立在实验仍类似今年安排的基础上,未来可能有改动,所以尽量先联系助教多问 ]:

首先,提前问清楚实验的可能难度与所花时间,合理评估自己是否真的适合这个班。如果想要摸鱼/觉得自己没有足够的能力,最好润。哪怕有足够的能力,也应该思考“是否真的值得为此花这么多的时间”。一句“优秀率给满”可能会隐藏很多问题,不要只为此就被吸引过去。[作为参考,如果重来,我还会选择这个班,一方面是因为我不那么在乎总评成绩,另一方面是我确实感到了兴趣因此愿意花费时间。]

其次,如果真的到这个班,无论如何,珍惜这么好的ppt/教学/作业设计/助教沟通氛围/实验设计,尽力多学到一些东西。如果有什么问题或不理解,尽量多与同学沟通,合作往往比各自研究来得有效。[仍然补充自己的经历作为参考。由于课程群老师要求匿名,自己搞了个可以匿名的小群交流讨论用,连带卧底的助教啥的现在也有96人了。群里有时会讨论各门实验/作业,也会有愿意先做一遍扫扫雷的同学,总体来说讨论氛围挺好,群里的讨论也给了我不少启发。]

如果想取得好成绩的话,一定好好背书,拿下期末。对于实验,无法做附加也尽量按时将本体内容完成。所谓的「记录一下,具体影响未知」的延期说不定才是扣分最狠的项目。不过,如果对自己水平不自信,最好不要在实验刚出时做,因为那时可能还会有小bug等,如果碰上了极搞心态。[关于延期扣分这点也希望助教改进,最好如组成原理一样把具体影响说清楚,避免按时做一小部分比延期做完还亏。]

点评结尾,作为来科大两年见到的质量顶尖的好课,还是希望这门课未来能有所改进,越做越好,也希望大家能收获愉快——至少是辛苦后有所得——的体验(。・ω・。)ノ♡


出分了 在bb上给出的总评上进一步捞了卡绩人 总体来说算相对不错的给分 感谢老师助教

(最后修改于 21 21 复制链接
布加勒斯特的人偶师大致观点同意,但是拿数学课比有些不妥。大多数人都能接受数学课作业给分不同,为什么不能接受计算机课实验给分有区分度呢?本质上来说,计算机课实验在助教给分之前,你就能验证自己能拿多少分了。假设你实验已经拿了90%的分数,结果发现大家都能拿满分甚至加分,自然就不甘心继续做实验了。而数学作业在助教给分前,你有多少把握能说自己的证明是可靠的?至少不会用lean这样的形式化方法验证吧:https://leanprover-community.github.io/theories/topology.html 。所以数学课作业布置一些必要的基础题目就有区分度了,而做计算机课实验则会开展所谓的“军备竞赛”。
红领巾感觉是不是可以参考http://jyywiki.cn/ICS/2021/labs/Labs,设置soft ddl和hard ddl
洛子花确实,作业老老实实自己做得分不高不低导致最后卡绩,不如那些抄的(悲)。这点太不合理了,实验也是。学到了很多,但是最后的结果真的不好(悲)。
布加勒斯特的人偶师回复 @………: 这点是合理的。另外国外一些课程用gradescope,会在服务器端跑一些没给学生提供的隐藏测试,给分都是deadline后给的。至少不会给学生很多的心理暗示,造成“军备竞赛”。至于抄袭也有足够的软件分析方式判断。最重要的是还有honor code的保障,比如CMU,如果你公开作业源码,哪怕毕业了学位都可以撤回。
红领巾回复 @布加勒斯特的人偶师: 是的,但是感觉我们这边很多条件并不具备。
原生生物回复 @布加勒斯特的人偶师: 有道理 知不知道成绩这件事确实会造成不少区别(不过提到的对一些情况和可能的解决方案的不同应该还是具有可比性的)
silence有一说一,我并不认为“如果实验难度降低,均分或许还会更低些”,lab2就是最好的例子
silence回复 @布加勒斯特的人偶师: 这种搞隐藏测点的一样会被冲,会被骂太难,还会被骂“出实验的时候不公布检查要求,缺乏透明性”,参见https://icourse.club/course/14088/#review-30575,说白了大伙还是想轻轻松松拿4.3,但是哪里有这种好事...
silence另外一点就是查重其实非常困难...要是有人看了别人的代码之后自己实现一遍,用时大大降低,但是基本查不出来什么...可以看下 https://web.archive.org/web/20211108084410/https://icourse.club/course/14088/ 中“萝卜萝卜萝卜”的评论,和下面助教“gloit”的解释(现在该评课已删除,所以用网页快照)。
silence另外,lab3.2包括了大量的自学内容,包括内核线程、内核模块的编写等等,但是就我检查实验的观察来看,似乎没有人真的搞懂了我们的代码框架(悲)
布加勒斯特的人偶师回复 @silence: 这种想法没必要理会,写数学作业没想清楚被扣分也要骂吗?说白了就是被之前妮可CS课程实验惯坏了。
布加勒斯特的人偶师总之,如果要区分度,通过平时成绩来区分比考试效果好不少。CS课考试能反映多少水平,懂得都懂。至于数学课也是一样,几个小时的考试能指望你证明出什么来吗?还不是靠熟练度,菲尔兹奖得主June Huh来妮可都得退学。
silence回复 @带带小菜鸡: 往年是通过严格的实验检查问出来的,但是今年完全问不出来 ,都对着代码说的头头是道的,连问“你在实验中遇到了哪些segfault”也头头是道
silence回复 @带带小菜鸡: 我其实还想了解一下如何用github的commit来检查抄袭...比如,如何防止他们狡辩称“我用不惯git,是最后统一提交的”和“我忘了用git,所以才最后提交的”;又如,如何防止他们从最后一天抄变成提前两三天抄。而且,如果commit要求对代码进行注释,还不如写实验报告...
ldeng回复 @布加勒斯特的人偶师: 今年实验没有区分度很大程度上是我们实验设计的问题。已经在计划明年改进了。
ldeng回复 @布加勒斯特的人偶师: 我们考虑是先用一些客观的测试来给分,而不是像今年这样只是靠助教肉眼检查。今年后两次实验难度梯度可能没设置好,导致很多学生要么完全做不出来,要么10分。难度梯度不好可能也会增加抄袭现象(因为不抄袭可能分完全没了,反而抄袭还有不被发现的可能),所以明年也在计划重新调整实验要求,降低及格分的难度,提高满分和加分的要求。
silence回复 @ldeng: 我觉得降低及格分的难度没法搞...看今年lab2他们不也是全功能都做,lab3.2第一问就一个遍历vma两行代码,也没见有谁只实现了这一个功能...所以我觉得他们的定势思维就是所有实验所有功能就得全做,这就卷起来了
?你计实验全是人情事故,上了三年的最大感触
?回复 @silence: 我去年也有这种感觉,稀里糊涂做出来了,但没感觉到自己学会了什么
taoky回复 @silence: 可以实现成每次 make 都 git commit 一次,记录系统信息。Ref: https://nju-projectn.github.io/ics-pa-gitbook/ics2021/0.6.html#development-tracing
silence回复 @taoky: 妙啊
立即登录,说说你的看法
匿名用户 2022春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:杀手
  • 收获大小:一般
  • 难度:中等
  • 作业:中等
  • 给分:杀手
  • 收获:一般

我想说的是,这门课最大的问题就是没有代码查重(

所以无论实验设置的多难,实验完成率都是居高不下,这不但增加了同学的负担,也增加

了助教的负担。

所以希望从今年开始要求提交代码查重。

(最后修改于 3 4 复制链接
silence我们本来是打算通过严格的检查提问查抄袭的,所以根本没打算让你们交代码;而最后查实验抄袭已经来不及了,毕竟可以以“我虚拟机已经删了”等理由逃避检查,我们也没办法说什么
ikon回复 @silence: 从明年开始也不迟
silence回复 @量子物理的高峰: 确实
ldeng明年我们预计是要提交源码的。因为往年实验没有出现今年这种完成率很高的情况,所以助教事前没有想到会出现这样的情况,只是在检查实验的时候问几个代码相关的问题。随着实验完善,网上资料肯定会变多,抄袭现象也会逐渐严重,我们也在想办法解决这个问题,也希望大家多多提建议,帮助完善课程。
立即登录,说说你的看法
Youth 2022春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:很多
  • 难度:中等
  • 作业:中等
  • 给分:一般
  • 收获:很多

22春季选课。作业占比20%,实验30%,期末50%。今年在BB系统上通知期末卷面成绩和预计总评,总评大约是(期末卷面成绩/2+50),前提是作业实验均按时完成。今年实验完成率巨高 & 要想获得一个好成绩还真得好好背书(悲

这门课是专业课里面体验最好的之一;坤哥讲得很好,就是英文PPT不太友好(哭),复习的时候需要结合课本一起看;作业总共5次,助教会在考前统一批改并给反馈;考试是闭卷,复习的话主要就是各种概念+算法(进程调度、页面置换、磁盘调度)+临界区问题、信号量。

至于实验,相比于我上学期的编译,实验难度还行(实验过程中看到各种segmentation fault早习以为常了);以及这个实验文档简直太友好了,感谢各位助教。

(最后修改于 2 0 复制链接
current 2022春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:很多
  • 难度:中等
  • 作业:中等
  • 给分:一般
  • 收获:很多

这门课主要还是李老师讲的,课程具体情况建议参考助教写的点评: http://icourse.club/course/13766/#review-6965

讲道理上课我去的有点少(),不过就我听过的几节课来说,李老师讲的还是很清楚的,虽然带一点口音但是影响不大,ppt较之其他课程也不错,但全英文这件事见仁见智吧。

作业不是很多,今年一共5次作业,每次十几个题,做起来也快,没听课的话就慢了

这门课感觉做的最好的地方就是实验了,实验文档非常详细,比隔壁cod不知道高到哪里去了。实验本身也挺有趣,lab1熟悉linux,lab2写一个shell和实现一个系统效用,lab3写一个内存分配器和实现进程内存信息统计,lab4写一个文件系统。总体来说有助教写好的代码框架,学生只需要填空,难度比直接自己写降低不少,不过还是有点难就是了,但好像隔壁班也挺难(

最后的考试是我非常不喜欢的,嗯考ppt上的内容,几乎每道题都是ppt上的,还闭卷,背书和ppt是真无聊。

预估总评刚出,刚好卡寄,最后出真总评老师要是给我加了一分,我也给这个点评加一份(

————————————————————————————————

姗姗来迟的更新:

加一分,理由不解释了(手动狗头)

(最后修改于 2 1 复制链接
silence看起来似乎可以加一分了(笑)
立即登录,说说你的看法
账户已注销 2022春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:很多
  • 难度:中等
  • 作业:中等
  • 给分:一般
  • 收获:很多

符合预期的一门课,实验有一定挑战性。老师会在讲课中灌输一些科研的思想,以及如何做好学业与生涯规划的建议,有很好的参考意义。

(最后修改于 1 0 复制链接
普通人 2022春
  • 课程难度:困难
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:困难
  • 作业:中等
  • 给分:超好
  • 收获:很多

lyk讲课很流畅 ppt做的比较好 没点过名

作业和往年差不太多 就不评价了

实验比往年难不少(github上搜USTC OS之类的可以找到今年的和往年的实验题):

  • Lab1: Configuring Linux environment.

  • Lab2: Add linux system call. Complete a shell and a top program.

  • Lab3: Malloc lab. Complete a memory allocator (sbrk) and process memory information statistic program.

  • Lab4: Complete a FAT16 file system.

附加(4分):

  • Lab2: Mutipipe and redirector (1).

  • Lab3: change sbrk() to mmmap() and complete the memory allocator (1).

  • Lab4: three-back-up (1) and Log (1).

实验一没什么好说的 从实验二开始上难度

FAT16实验(实验4)在加了第二部分的基础上又加了两道附加题(每道加总评0.5分)两道附加也比较难 最后只有十个左右同学文件系统的两道附加都写了

附上我的实验(拿了两分附加) 弱弱地求个star

考试概念题分值巨大 还有几个概念书上没有 不少概念题我理解错了题导致卷面竟然没有到平均分

查卷的时候直接泪崩 不过最后还是被坤哥捞到了优秀

1 10 复制链接
普通人还有就是 实验和作业的抄袭比较严重 最后坤哥组织作业查重貌似抓住不少抄作业的 然而抄实验copy代码的就难抓了
silence回复 @普通人: 我们本来是打算通过严格的检查提问查抄袭的,所以根本没打算让你们交代码;而最后查实验抄袭已经来不及了,毕竟可以以“我虚拟机已经删了”等理由逃避检查,我们也没办法说什么
qoirhg捞到优秀应该是因为你卡绩了吧?感觉给分应该是84,89这种加一分,其他一份不调
ikon为什么你卷面没到平均还能上优秀?
silence回复 @量子物理的高峰: 原因应该是:1. 他卷面只比未计入不及格的平均分第0.7分(事实上卡在85左右的很多卷面都十分接近平均分);2. lab2和4做了附加;3. 作业几乎没扣分。
ikon回复 @silence:据说查抄袭查的挺严的,可能导致有些其他有些考试比他高,实验和他一样的同学拿不到优秀吧
silence回复 @量子物理的高峰: 其实总评前40%的人抄袭非常少。但是今年期末卷面不及格的有27%,不算这些人的话,卡在及格卷面平均分的人总评在优秀率线边上是很正常的事
ikon回复 @silence: 这不及格率真的高啊,其实建议下次可以适度提升试卷难度,这样就能避免批改2次以及抠字眼了,感觉这考试考的就是如何把自己会的东西更加全面的表达出来,但是这其实让很多学的还可以的、掌握了考点但是不懂如何表达的同学吃了大亏
silence回复 @量子物理的高峰: 其实抠字眼真的是挺重要的事...以后写论文就知道了,有的时候一两个词的误用就会导致审稿人会错意然后把你的paper毙掉。而且我赞同加大难度,去年最后出了一道设计题,大概是出一个场景(有点类似生产者消费者,但是改了很大),问如何用信号量解决问题,要求写代码,结果最后得分率很低,而且批改过程十分灾难(因为学生写的千奇百怪,不好判分),于是今年就不这么出了,后果就是...
flxg4ever老哥,能不能别放实验代码,这样对助教和学弟学妹都不太好吧。(助教不可能每年都大改实验,他们科研很忙的;部分学弟学妹在科大这种内卷GPA的环境下,可能会参考你的代码,那就失去学习的意义了)
立即登录,说说你的看法
whoooo 2022春
  • 课程难度:困难
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:很多
  • 难度:困难
  • 作业:中等
  • 给分:一般
  • 收获:很多

总体来说这门课的质量算得上计科为数不多的好课。

1.老师的slides做的很好,讲课也不错,上课不会点名或小测

2.实验比较难,但是从助教写的二三十页实验文档和任务安排来看,感受比隔壁cod好了不止一点。

3.考试主要就是考背书能力,要背的东西很多,期末考试看一遍slides,再看看往年回忆的题目就差不多了,可能出现隔壁班讲了但本班没讲的题目(有时间可以翻翻隔壁班ppt)

个人感觉实验方面看得出来一年更比一年卷,但是据说实验抄袭现象挺严重,希望助教加大实验的检查力度,同时降低完成基础部分的门槛。

ps:作业要认真做,感觉批改偏严格,另外作业会查重

ps:今年2:3:5严格给分,四舍五入,卡绩的分数会上调一个档次

1 0 复制链接
Fr4nk1in 2022春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:很多
  • 难度:中等
  • 作业:中等
  • 给分:一般
  • 收获:很多

讲课: 李老师讲课还是不错的, PPT 做的也不错

作业: 五次作业, 平均每次八道题左右, 题目的质量不错, 可以巩固学习的内容.

实验: 代码部分以代码填空为主. 实验设计的有些不合理, 没有明显的梯度区分, 然后似乎抄袭的情况也很严重. 实验一是熟悉 linux 下的命令, 实验二是写一个 shell 和系统调用, 实验三是实现简单的 malloc 和写内核模块, 实验四是实现 FAT16 文件系统操作. 实验四的印象比较深刻, 有几个问题, 一是两个部分的码风不统一, 主要体现在变量名上; 二是整个实验存在着大量的相同结构的代码, 而且第二部分的结构要比第一部分清晰, 且少量的辅助函数似乎能为第一部分所用, 但是你都写到第二部分了, 第一部分肯定也写完了(). 实验梯度问题导致实验似乎特别的卷. 每个实验 10 分, 而且似乎不是相同权重. 共有 4 分附加分, 实验二 1 分, 实验三 1 分, 实验四 2 分, 其中我认为实验二的附加分最简单, 实验三的最难 (所以没写). 检查方式是助教人工检查, 没有实验报告, 不会提前给出具体的测试指令但是会给出测试流程. 最后得分 40+3, 放个实验仓库在这 https://github.com/Fr4nk1in-USTC/USTC-OS-Lab-2022.

给分: 给分公式似乎是 20% 作业 + 30% 实验 + 50% 期末考试, 实验附加分除以二后直接加到总评上. 似乎会捞卡绩的.


给个 8 分吧, 讲课 2.5 + 作业 2.5 + 实验 1 + 给分 2

(最后修改于 1 0 复制链接
唔哈 2022春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:很多
  • 难度:中等
  • 作业:中等
  • 给分:一般
  • 收获:很多

2022春季班级

 

虽然课程信息里有两个老师,实际上只有李永坤老师上课,因此仅对李老师的课评价。

上课:李老师上课水平还是挺高的,讲得易于理解。老师上课用的纯英文ppt,ppt上图很多,便于理解。缺点是复习时对着又臭又长的英文ppt,复习效率实在不高。教材用的是《操作系统概念 第九版》英文书,虽然中文翻译只翻译到第七版,但复习的时候还是推荐中文书吧(毕竟几百页的英文看下来,背下来实在难顶)。老师上课虽然说会点名,实际上没点。

作业:作业大概两三周布置一次,每次的题量不一定,作业也是全英文,大多都是概念题,翻翻书和ppt能找到答案。(貌似每年的题是一样的,想偷懒的同学可以谷歌搜索以前学长写的答案,但是切记:期末后作业会查重,而且真的有被查出来的)作业改得挺松的,每次视题量不同,满分为100或150分,写错了也就扣几分。

实验:李老师班的实验值得好好说道说道。这学期总共有四个实验:

  1. linux安装与入门
  2. 补全shell代码和添加linux系统调用
  3. 内存分配实验
  4. 文件系统实验

其中第一个实验比较简单,比较善良,就是教我们安装linux系统并且懂一些常识。

第二个实验也还行,补全shell代码,鉴于已经给出了代码框架,只是挖空让我们填,因此总体也不难。添加linux系统调用时,细心读文档,按照文档说得做,最后记得时刻保存虚拟机快照。

第三个实验难度开始加大了,完成动态内存分配器和进程内存信息统计。由于涉及到内存操作,很多人都倒在了段错误上面。而段错误,有的人几分钟就能找出问题,有的人可能好几天才能找到问题。可能是由于大家不熟悉linux下得debug方法,所以大家备受段错误折磨。这里推荐使用valgrind来查看哪里触发了段错误(core+gdb也行)。

第四个实验是实现fat16文件系统,上课认真听对这个实验的帮助很大。以及这个实验刚开始做很难,要熟悉各种函数,刚开始就处于:我知道要干嘛,但我不知道要用哪个函数/变量来实现的状态。当写完第一个小任务后,再接着写就没那么难了,很多代码都可以复用,复制粘贴嘎嘎爽。

最后对实验做个总结吧。这学期的实验,相较2021年又有了全面的升级,任务量加大,难度加大,以前的任务可能只是这学期任务的子集(当然,做完了也是收获很大)。每个实验的(最终修订版)文档都非常详细,这是我在科大上过的课里,实验文档最详细的一门课(其他课学一学啊),可以看出助教很认真很用心地在准备实验。

当然,实验的大幅升级,也导致实验文档在刚发布的版本中会有一点小错误和疏漏。这会导致最早一批写实验的学生都卡在某一个代码段,要么一直报错,怎么也得de不出来,要么就无从下手,不知道咋写。然后需要学生再跟助教反应,才能对实验文档进行修改(当然,经过这学期的“血泪”,明年的实验文档应该会更完善)。最后,建议大家debug不出来的时候,及时寻求助教的帮助,有可能不是你的错。本人做lab3的时候,改一个bug死活改不出来,后来在助教的电脑上跑,就跑出了正确结果,原因我至今没有弄懂。

考试:OS这门课的考试就是文科题,老师助教们很贴心地用了中英双语(ICS看看人家OS多贴心),所以无论是看英文版教材还是中文版教材都能答题,试卷上很多题来自ppt。建议考前多背背ppt和书本吧。据不知名不可靠小道消息,期末考试改完一遍后又改了一遍,标准更严格。

给分:由于优秀率满了,似乎没怎么调分。应该是按照2:3:5的比例严格算分,再四舍五入,最后有卡绩的往上捞一分。

总体来讲,李老师的课很不错。扣一分是想提醒大家李老师班的实验难度,慎重考虑啊(

(最后修改于 0 0 复制链接

李永坤

教师主页: 戳这里

吴思

教师主页: 戳这里

其他老师的「操作系统原理与设计」课

李永坤 9.1 (35) 2024春 2023春...
陈香兰 8.0 (36) 2024春 2023春...
未知 2017春 2009秋...
熊焰 2013春 2010秋...

李永坤老师的其他课

操作系统原理与设计 9.1 (35) 2024春 2023春...
图论 8.5 (2) 2017秋
存储与文件系统 5.2 (5) 2022秋

吴思老师的其他课