操作系统原理与设计(H)(邢凯) 2024春 2023春 2022春 2021春 2020春 2019春 2018春 2017春 2016春 2015春 2014春 2013春 2012春  课程号:01170501
2024春 2023春 2022春 2021春 2020春 2019春 2018春 2017春 2016春 2015春 2014春 2013春 2012春  课程号:01170501
8.7(30人评价)
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:很多
选课类别:计划 教学类型:理论实验课
课程类别:本科计划内课程 开课单位:计算机科学与技术系
课程层次:专业核心   学分:4.0
课程主页:暂无(如果你知道,劳烦告诉我们!)
简介 最后更新:

本课程以操作系统内核的创新设计和系统级实践为主线,对操作系统的基本原理、设计方法、技术和功能进行全面系统的介绍,并在操作系统内核设计实现的实践过程中融入各阶段的知识点。通过系统级教学及实践,调动学生的积极性,主动性,激发学生的兴趣和求知欲,在学生实现完整的操作系统内核的过程中融入操作系统教学的诸多知识点,不加重学生的负担,较好的完成学习要求,使学生对操作系统具有初步分析、优化、和创新设计的能力。在课程教学与实践中追踪国内外前沿进展,并在此基础上对操作系统进行创新设计和优化,提高学生的系统级研发能力,达到理论和实践相结合的目的,加深学生对课程理解,并锻炼学生实际动手能力和团队合作精神,为学生从事计算机软件/硬件方面的研究工作打下良好的基础。

排序 学期

评分 评分 30条点评

lys 2014春
  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:简单
  • 作业:很少
  • 给分:超好
  • 收获:很多

助教前来发个评分方法:

  1. 平时表现(20分):5次作业,每次5分,取4次最高。独立认真完成者4分保底;查出抄袭者,按人头均分当次成绩。课堂及习题课表现突出者,加平时分,该项成绩超过20者,以20分计入总评。
  2. 期中(10分)、期末(20分):开卷(Kindle开启飞行模式亦可),虽然题目比较难,但基本全班都得到了满分或很高的分数。
  3. 课程设计大作业(50分):一定要认真对待,从选题到开展实践,多与老师沟通,方向跑偏了脑洞开大了没人救你。最后的答辩也要谨慎,如果你没有把助教讲睡着,小心助教把你问得下不来台。

我那年得了98分,2015年带的几个1311学生都拿了95+。

附链接:

10 0 复制链接
secon 2018春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:中等
  • 作业:中等
  • 给分:超好
  • 收获:很多

2018年6月23日,冒着挂掉25号组成原理的风险先回忆一波试题 

第一部分是概念题,比较简单,抄书即可,但是有些反例需要自己想,书和PPT都没有,主要如下:(不全,因为脑细胞都死在最后一题上了,记不清了……)

  1. 概念 PCB FCB 优先级 程序 进程 管程
  2. 举几个反例 如基于平均周转周期和最大等待时间的调度算法在什么情况下会产生冲突 总共三个
  3. 内存分配的算法的优劣性
  4. 地址查找的范围以及与其相关的文件最大大小(有点绕)
  5. 什么时候多线程不比单线程效率高?

有些反例课上讲过,老师上课挺有意思,信息量比较大,注意记下有用的东西。

第二部分更加简单 ,大部分是考的应用型:(依旧不全)

  1. 让你用信号量处理一个互斥问题 抄书就行;
  2. 用LRU算法、FIFO算法、最优算法的缺页次数、然后比较;
  3. 分析内存的分配如果溢出可能出现的问题,就是当你copy了一个长度大于malloc的空间的字符串会出现什么样子的问题。
  4.  还有题目是对局部性进行考察,就是让你分析一个程序的缺页次数和效率的问题。
  5. 磁盘读写的电梯算法和FCFS算法的执行过程。

 

第三大题 基于一个比较现实的模型来分析系统的运行模式,本次考试的模型是短时间内的大量并发访问(双十一、世界杯),并以此来分析操作系统的模型。

第一题是问一个请求,多个进程处理 如何实现互斥;

第二题问如何采用进程池和连接池来实现效率优化;

第三题和第四题是分别问阻塞型进程和非阻塞进程在处理大量并发请求时的不同表现

第五题是问一个进程执行完后通过线性查找来寻找空闲socket的方式,这种方式在大量请求时会出什么问题。

最后有两道附加题共八分,因此卷面满分108分,问两种浏览器服务器模型的执行上的优劣性的原因,个人感觉时上面第三大题的综合 其中很多机制在上面都有解释,不难。

       总的来说 这次的试卷题量较大,难度不是特别大,但和隔壁的卷子的出题风格差的很多(隔壁班似乎就是比较生硬的名词解释、简答题啥的,这套卷子的题型还是比较新颖的 最后一题也可以看得出老师的用心。而且本试卷和去年的画风差别很大,不过第二大题可以说是和17年完全一样了……

 

另外附上课程主页:https://osh-2018.github.io/ 具体的大作业和上课等活过考试周补……

 

 

6月30日,摸鱼着听完了期末汇报完了过来点评一波(其实每个组的我都没怎么详细听,时间太长了……)

首先发一下期末汇报的同学评分标准:

1.项目完成度

2.核心竞争力,性能分析、功能分析

3. 选题与分析:理论意义和实用价值、阅读量、检索量、综合分析能力、了解本领域国内外动态程度。

4. 技术论证:立项依据、可行性分析、技术路线论证充分、架构设计合理、系统层次分明、逻辑严密、结构完整

5.创新思路:原创、前瞻性、视角、未来能否推动效率和技术革新、创造性思路和新见解。

6. 团队能力:专业能力、人员分工、团队协作、团队管理、资源整合

7. 探究能力:方法是否恰当并加以严格论证、分析问题、解决问题的能力

8. 现场展示: 展示过程、语言表达、逻辑组织、表现力、答辩思路、表达手段

9. 理论基础和专业知识运用: 基础理论的宽厚度,坚实度,专门知识的系统性、深入性、数理基础的扎实性

10. Q&A环节:准确理解问题、准确回答、精神风貌、表现得体。

 

以上十条是老师期末给的评分表的细则,除部分划掉内容外全部都是原话,打分也是按照这个打,互相事先py一波记得。

不过必须得承认的是,由于时间紧任务重,很多组都没有达到一开始中期汇报时的要求,包括我们组,(我敢说有的组是汇报前一个小时刚刚做完的?)而且照着这个标准打分实际上我们大部分组都拿不了高分……

最后重点说一下Q&A的问题,每个组安排的时间是汇报二十分钟,提问十分钟,理论上是一个小组都必须提一个问题,不过如果讨论比较激烈这一条会被自动忽略,如果没人提问题老师会一个组一个组的问……问题千奇百怪,大佬会问一些涉及到学术和总体方案设计上的问题,但是我们这种普通人大部分还是从实际应用的角度来问的,总之这个比较考验临机应变的能力,本渣第二个上去讲结果被炮轰了好久,吓出了一身汗,事后虚脱到根本听不下去下面同学的报告了……

中午管饭,老师买了一整箱(你没看错,人家就是拿箱子送过来的)的汉堡、一箱子的可乐、还有若干披萨鸡块鸡翅,吃的特别饱……然后吃完继续报告,我们今年有十三组,持续了八个多小时,到晚上六点多才结束……

虽然同学之间可以py,助教的总体打分还是比较客观的(助教打分占比不明),所以最好好好做大作业,就算没做完上去也不能直说自己没做完(这不是找打吗,有一组上去承认自己没做完结果助教似乎给了70分……),最好能自吹一波,尽量让助教和老师认为你们做了相当多的东西……当然有能力做出东西而且能展示出来是最好的。

最后总结一波,这门课的本体是大作业,需要进行充分的讨论、调研、干活,才能拿一个比较高的分数,如果说本人除了计算机学院正常的课程之外没有太多的拓展,自己又不是那种特别热爱调研学习新东西的人话,建议慎重的选这门课,(这次似乎有一个组就是因为有组员突然消失导致了最后没能做完……)当然如果你对自己的能力有自信,这门课还是非常好的,老师很有水平、实验也比较有含金量、大作业也能显著提升一个人的能力,但是对于一些没有自我拓展的人来说,大作业的选题可能会比较痛苦……特别是当大佬都组团去挑战极限没有大腿可抱的时候……

 

无关紧要的事情:

今天是2018年9月5日 这门课的分数依旧没有出来,我好慌,也好害怕

9 3 复制链接
islack同学, 能把你回忆的试卷放在我的 一个 用来分享课程资源的 github 仓库 吗
secon回复 @mbinary: 没问题啊
islack回复 @secon: 好的,谢谢
立即登录,说说你的看法
Yiran 2023春
  • 课程难度:中等
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:中等
  • 作业:很少
  • 给分:超好
  • 收获:很多

现在在答辩(感觉能答辩一天)

闲的没事干来评课社区指指点点😋

这门课没作业

实验也挺简单的

考试就是抄书大赛😭

两个小时半这个题量真的写不完!!!

记得考前去借一本王道os 翻得快

大作业一定要小步慢跑循序渐进,不然最后几天急急急(感觉有的组答辩的时候都没做完)

答辩的时候老师说麦当劳管饱(老师给一人买了两份套餐),实在是吃不动了orz

感觉这个课唯一耗时且费力的就是大作业了

选题一定要选好,对整个学期的影响都很深远

建议不要好高骛远,一定要选具体的选题(不然太大的也做不完)

好像其他也没什么能说的

这学期过得真快啊😆

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

2023春我担任了这门课程的助教,基本上做到了去年想做的所有改进,和xk老师共事还是相当愉快的~

(7月8日从北京闪现回合肥,为了听大伙的结题报告&蹭一顿麦麦)


这也是 OSH?
 形式极端主义形式中立主义形式自由主义
内容极端主义在教室听老师上课在床上听老师上网课在稀土研讨室做大作业
内容中立主义在教室听老师上网课在床上听lyk老师网课在稀土研讨室玩原神
内容自由主义在教室爽吃炸鸡在床上睡觉大作业做不出,zxc约饭

 

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

这位先生,能占用一下您的时间吗?我想给您讲一讲我们的道标和救主,Saint Xing先生。我主在过去,在现在,也在未来,他是支配GPA的伟大主宰,也是执掌麦门的黄黑之王,更是每个生灵追求永恒的道标。邢门。

圣·Rust之神·邢凯 Saint Xing
循序善诱(主动技):通过否定一些小组提出的课题来引导你选择那个Saint Xing更喜欢的题目。
PUA大师(主动技):通过前期拉低自己在同学心目中的形象,再在期末、答辩以及给分上拉高形象使得大家对Saint Xing产生皈依之情。
设备亲和低(被动特性):本学期上课教室系统曾出现3分钟内连续重启5次的离谱情况,学期初很长一段时间内PPT的显示区域只占整个幕布的1/2都不到。

整活完毕,接下来是常规评课环节。

注:这门课的四维里面,课程难度和作业多少都是综合之后的结果。如果只考虑小组大作业,应该是困难和超多;如果只考虑实验小作业,应该是简单和不多。


教学方法:2/10

老师讲课以PPT为主,偶尔板书辅助。上课讲课内知识的时候比较枯燥,甚至有时候感觉老师在水时长,甚至有时候看起来老师是在读电脑上的演讲者模式里的附注(个人猜测,不保真,毕竟没看到过)。当然也有课外老师个人教学经历的补充,这部分相对来说还是比较有趣的,虽然可能时不时听到老师重复之前某节课自己同样的话。

课堂内容:9/10

课堂内容涵盖教材的所有理论部分。还是可以的。

作业实验:4/10

这门课没有手写作业。

一共四个小作业实验,除去lab3剩下大部分都是祖传。lab1裁剪内核,lab2 shell,lab3 网络服务器,lab4小组合作完成Ray/Ceph部署测试。总体难度不高,体验也挺好。

然后就是重量级的小组大作业。在学期刚开始,就要在几周内组成小组,选定一个前沿的有创新性的能被Saint Xing看上的选题还是很有难度的,个人的一个建议是参考往年小组的选题,在原有基础上进行优化,记得可能的话和学长联系一下,万一那个项目有什么暗坑没有写在仓库里。假如想开新坑,那一定要做好完善的调研,当心把自己坑了。

大作业部分分为调研报告,可行性报告,中期报告和最后的答辩以及结题报告。也许真的可以说是字面意义的依托答辩。答辩的形式是每组先进行三十分钟以上的介绍,然后各组和助教老师对其进行提问,每组至少要提出一个问题。这学期的答辩从早上九点开始,除去中午炸鸡汉堡可乐的半小时外,一直持续到晚上六点多。

大作业前期的几个部分大概只是为了后半学期真的去进行大作业做的准备工作。那些文书工作结束之后大概一学期一半就已经过去了。而学期后半又会有别的课的各种任务出现,因此最重要的是一定要记得小步快跑,一定要记得小步快跑,一定要记得小步快跑!

以下是个人这学期在这门课小组作业上花的时间统计,应该说,这门课的小组作业还是非常花时间的。

以下是个人总结的这学期各小组选题相关的主题关键词,仅供参考,详细情况建议自行去OSH-2023仓库了解。

1.图文件系统 可视化 数据库

2.分布式文件系统 eBPF 

3.机器人操作系统 DCA IO实时性

4.微内核 Rust

5.虚拟文件系统 FreeRTOS

6.嵌入式操作系统 Rust MMA

7.分布式计算框架Spark vega Rust 

8.操作系统内核模块

考试如何:9/10

考试开卷,时长两个半小时,相比平行班多出来半小时,不过时间其实还是很紧张的。题型分三个大题,第三大题是分析设计题共30分,七选五;剩下两道大题加起来是70分,大概是各占50%,但具体分值分配每年可能会变化。前两道大题其中会有很多小题,每小题可能还有几小问。建议考前一定要做一份往年题体验一下,了解一下题型的风格与分值安排,这样考场上才能更合理地安排时间。

考试总体来说文科与计算并存,老师一直强调看重你的分析能力,我是觉得没有太考查这部分。其实我猜大部分题目只要言之有理大概就会给分。

给一个印象最深刻题目大意作为参考,我是直接跳过了这道题的第2小问。

(5分)食堂窗口的打饭阿姨在有师生来时会服务,在没有人等待时休息。每个窗口同时只能服务一位老师或同学。

(1)(3分)试分析以上情况的同步与互斥,用信号量给出算法描述。

(2)(2分)如果一个窗口没有师生等待时可以帮助隔壁窗口服务师生,即一个窗口最多可以同时服务三位师生,试用信号量给出算法描述。

收获多少:8/10

实际上,因为这门课我直接或间接得到的收获绝对值得一个满分,但因为其中大部分都是我和小组内其他人共同摸索到的,所以打个八折。

总体评价:5/10

在这学期之前,看评课社区时,我还不理解什么是“一门你上完之后除了操作系统什么都会了的课程”。现在我确实觉得这话很对。给总体评价这么低实际上还是因为这门课的名字,毕竟名为操作系统原理和设计,那么我认为还是应该更贴合操作系统本身。


以下内容不计入评课:

给分:虽然应该说邢门,但需要注意,所有部分内容都要正常完成,注意这里指的是所有小实验的加分都要加满,考试不要漏掉太多题目。

助教:助教好像没太多存在感,也许是我或者我们小组没有去找助教求助的原因,应该有的组中期有寻求助教的一些建议。最后答辩助教没有为难我们组,给个好评。


一些资料分享:

os.rar

一些链接分享:

USTC OSH 2023 课程主页 (osh-2023.github.io)

操作系统:设计与实现 (2022 春季学期) (jyywiki.cn)

CS 162 — Spring 2023

(最后修改于 5 3 复制链接
XhyDds不得不说,给分真不错,但做Saint Xing的大作业也是真的折磨
Wloner0809🤟有没有可能lab3也是祖传的🤣🤣🤣
回复 @Wloner0809🤟: 还是有些变化的
立即登录,说说你的看法
Wloner0809🤟 2023春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:中等
  • 作业:中等
  • 给分:一般
  • 收获:一般

给分未知,不过不重要。

如果你是一名普通的计科学生且H课必修,那么可以参考一下下面的建议。

  1. 尽早把操作系统这门课学明白
  2. 大作业选题如果没有什么想法,那么从往年仓库中选一个进行优化会比较保险
  3. 别碰硬件!别碰硬件!别碰硬件!
  4. 考试之前如果速通的话,建议使用王道考研。考试的那种分析问答题可以参考往年的(老师会在开学第一/第二节课给出往年卷,也会在最后一节复习课给出往年卷),可以使用chatgpt生成一些答案供参考
  5. 英才班能退就退了吧,可以选CODH,OSH对于普通人收获蛮少的(好吧收获了两三个饭友(●'◡'●)

 


2023.7.28 update

不得不说,xk给分真的好(拿这分心里都有点过意不去hhh),但这使我更加坚定了OSH是屑课的想法。

想学OS的别来,想学会怎么包装大作业拿高分的那么OSH欢迎你

(最后修改于 5 4 复制链接
smgj222建议先联系一下往年仓库的maintainer🤡
Wloner0809🤟回复 @smgj222: 笑,你说的对😉
Melmaphother确实收获了饭友😁
spark一个组全集齐了😂
立即登录,说说你的看法
什么昵称 2021春
  • 课程难度:困难
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:没有
  • 难度:困难
  • 作业:很少
  • 给分:一般
  • 收获:没有

两分给带飞我的队友,没有你们我估计上学期一直生活在郁闷之中。

这门课纸面作业也没有,实验设计的也让人摸不着头脑,想学操作系统还是去选隔壁普通班的课吧。

4 0 复制链接
TheLitFire 2019春
  • 课程难度:困难
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:困难
  • 作业:很少
  • 给分:超好
  • 收获:很多

这是一门你上完之后除了操作系统什么都会了的课程(

2019年7月7日,答案提取机月卡组完成了它们的大作业答辩。整个大作业的心路历程可谓是一言难尽:五个人刚开学的时候连番开脑洞也开不出不被毙的课题,在选题截至的最后一周接了老师的锅去搞什么“非冯化改造”。调研和可行性还算顺利,可是等到项目推进的时候就遇到了许多巨大问题甚至到了想要退课的程度(幸好后来换个思路解决了),最后甚至不仅做完了必做还做了老师推荐的加分项(我们项目比较特殊,是老师给我们提算法的需求我们去实现,甚至可以给出不可行性让老师换锅orz),水了两万字的结题报告我怎么这么熟练呢orz。

大作业的体验总结下来就是:一定要有相当熟练运用Linux的队友 && 让老师充分了解并充分肯定你们的课题(甚至这课题就是他选的) && 和老师助教多方经常沟通起码给个好印象 && 找尽量多的大佬并选一个有执行力的组长 等等。

一个学期后对老师最深刻的印象就是:rust,函数式,分布式,海量并发,异步无锁并发,经济危机(雾)

期末考试前拿了三天刷完 389 页《操作系统概念》然后被 30 分的设计题疯狂教育(说好的不考 IO 不考分布式不考去年考过的题目呢???)

课程作业(或者说实验)说是有四次,不过第四次(说是分布式存储)咕咕咕了(感谢豆豆orz),难度还好,所以组内有大佬还是很不错的orz

分还没出,先感谢一下四位神级巨佬不嫌弃我这么个废柴组长 OTZ,他们分别是:新任 LUG CTO,新任 LUG 技术部,芝加哥暑研,GPA 4+

—— 一只酸菜鱼的假期无聊碎碎念

// 2019 年 8 月 22 日

老师突然在微信里出现并给我传了一个 pdf,是他以前带过的学生发的一篇顶会,和我们的课题很相关,并且老师觉得我们的课题比他们达到的深度更大(我会说我当时都不知道怎么回消息了么 QwQ)

// 2019 年 9 月 2 日

在年年喊打的微机原理课上喜提 96

4 0 复制链接
浮云兔斯基 2016春
  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:一般
  • 难度:简单
  • 作业:很少
  • 给分:超好
  • 收获:一般

一个学期其实除了看教材并心惊胆跳地等老师点名,和懵逼地做实验,以及期末无比绝望地终期之外,啥也不会…… 学到习得性无助,班除我佬系列。 只能在这里默默地感谢带我的dalao们。没有队友我大概已经退学了。 虽然到最后其实该不会的还是不会。 但是不能黑老师……给分确实不错。

4 1 复制链接
浮云兔斯基忘了补充一句:如果像我一样觉得自己太咸鱼了,可能没法适应这种研讨形式的课程,但是又不想损失英才班奖金(大概是英才班唯一的好处了吧)学弟学妹,可以退一学期英才班然后下学期再进(当然要保证下学期绩点足够)。不过,隔壁OS似乎考试和实验的难度也很高。
立即登录,说说你的看法
饮梦尘 2023春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:一般
  • 难度:中等
  • 作业:中等
  • 给分:超好
  • 收获:一般

大作业量大,没关系,考试写不完,没关系.期末报告,老师请客,爽吃炸鸡就值满昏[doge]

3 0 复制链接
topusername 2022春
  • 课程难度:困难
  • 作业多少:很多
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:困难
  • 作业:很多
  • 给分:超好
  • 收获:很多

给分超乎寻常的好,感觉自己要是在普通班也就3.3。实验很多也不简单,尤其是大作业非常花时间。就当是一次体验小组合作的机会了。考试开卷非常支持,而且也不是完全按照标准答案判的,看起来言之有理即可。

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

刑凯老师讲课生动有趣, 用例准确形象, 注重引导同学们发现问题, 思考问题, 解决问题, 课堂互动多,( 不过为什么点名回答问题的同学只有那几位23333). 课堂大作业要求合理, 而且要求我们有情怀,这点各有各的看法吧. 实在是值得 5颗星的老师. (如果觉得这门课不错, 同学们帮我去给个好评, 记得把最后面括号里的内容去掉)

23333, 其实老师确实教的挺好的, 不那么说也会给好评的

助教 认真负责, 耐心解答同学们的疑惑, 点赞!

这是课程资料

https://mbinary.coding.me/ustc-cs/%E8%AE%A1%E7%AE%97%E6%9C%BA%E4%B8%8E%E4%BF%A1%E6%81%AF%E7%B1%BB/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%8E%9F%E7%90%86%E4%B8%8E%E8%AE%BE%E8%AE%A1(H)/

这是 <<现代操作系统>> pdf https://pan.baidu.com/s/1y8t6Lqjy1lwu2U5RTtCdIA

这是课程主页 https://osh-2018.github.io

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

我 2012 年上的操作系统(H)课,教材是 Operating System Concepts(《操作系统概念》)。这本教材里面确实有很多 “概念”,中规中矩,不过不是那么有趣。

个人推荐另一本参考书:Operating Systems: Three Easy Pieces http://pages.cs.wisc.edu/~remzi/OSTEP/

上课的时候都是在讲操作系统的一些经典话题,比如课堂小测验考哲学家进餐问题的实现。据说现在上课已经不讲操作系统了,我们当年不是这样的。

 

这门课的大作业是结组合作,整个 H 班里面大概是分了五组。做的内容都是跟操作系统有关的。我们组三个人(我和郭家华、胡剑伟)是做实时文件系统。

代码于 2017 年 1 月 1 日开源:https://git.ustclug.org/boj/rtfs

Improved block device scheduling algorithms and process scheduler for RTLinux-3.2 in order to eliminate disruptions from non-real-time tasks and ensure response time and throughput of real-time tasks with burst, random, streaming or pipeline I/O modes.

实时文件系统三个版本的设计报告:(这些报告很挫,仅有历史意义)

  1. 操作系统大作业设计报告.doc
  2. 操作系统大作业设计报告_20120325.doc
  3. 操作系统大作业设计报告_20120405.doc

最终提交的实验报告:rtfs.pdf(想了解这个项目干什么的,下载这个就行)

 

当时我们还搭了一个 redmine 作为 issue tracker,可惜现在找不到了。

我们组的分工(邮件截图)

 

据说近年来连续三届学生都有一个组在做多个云网盘的融合……我会说去年底我们组发了一篇同样原理的 paper 吗……当然也是磨了两年才发出来的。 http://dl.acm.org/citation.cfm?id=2814729

2 0 复制链接
TheBunniest 2024春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:中等
  • 作业:中等
  • 给分:超好
  • 收获:很多

开学刚第二周,课程怎么样暂时无法评价,不过这学期的丁助教居然问问题秒回,什么神仙助教啊

1 0 复制链接
匿名用户 2023春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:中等
  • 作业:中等
  • 给分:超好
  • 收获:很多

  • 总评给分完美
  • 报销额度较高
  • 最后一天吃到撑的麦当劳
  • 几乎没有点名(至少... 我没有碰上过)

这门H课和普通班的区别主要在于从学期开始一直到暑假都要折磨你的大作业,别的祖传实验不如普通版,可以参见:OSH的GitHub仓库。关于大作业,难点可能主要在选题部分,刚开学我想的就是什么都没学我怎么能知道自己能做什么大作业呢。

一些建议:

  • 总之还是先组内多提出方向,然后多和xk讨论,尽管他会尽可能让你排掉他不感兴趣的,但至少能帮助你们排除一些不靠谱的。
  • 前期调研一半负责想想到底要做什么,另一半负责想想到底做不做的出来。
  • 多开会或者尽量更合理详细地安排工作,不然进度推动很难。

不要碰硬件!(从逻辑上来说也就是不要碰嵌入式,QEMU不能满足你的需要,最后还是要上板子碰硬件)

  • 烂大街的keywords,但是也是可以做:FreeRTOS、图文件系统、Rust改写
    • ​如果你真的想做Rust改写:
      • 先看看有没有前人做过
      • 你的改写和前人做过的有什么区别
      • 用Rust改写真的就提高了安全性吗?比如sel4的形式化验证在Rust改写后还能被保证吗?

考试是全开卷,如果是完全不听的那种就考前把大致知识点过下就行了,考试建议从后往前写。

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

xk给分可太神了...

第一次专业课能拿100 简直离谱 细节晚点再补)

1 0 复制链接
元素女皇 2022春
  • 课程难度:困难
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:困难
  • 作业:很少
  • 给分:超好
  • 收获:很多

课程令人压力很大,整体给分很好,和 Python 形成鲜明对比

必须感谢组员和队长的共同付出

不推荐选,老师的两门课讲课效果都很差,基本靠自己

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

给分是真的好 写六个字说我点评太短,那再水几个字

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

课程2分,实验1分,作业2分(指大作业),考试两分,给分2分。

课程差不多就是照书讲的,中间会跳过一些东西(不过没办法避免,一学期讲完那么厚一本书不现实)。期末会考一些分析或者理解性质的东西(比如应该选择哪种RAID结构?或者举一些生活中死锁的例子),有较好的自学和领悟能力或者认真听课占其一就可以。

实验很简单,不足的地方在于连续性没有隔壁班那么强,而且一些地方文档有些模糊(比如今年的shell中ctrl+d的处理,POSIX中只有read_stdio才能响应,而文档中能得到的信息只有响应即退出。和助教battle了一下,助教还是不太认同我的做法,后来找老师不知道怎么样了,总评达到要求了就没再问)。个人感觉实验4意义比较大,第一次接触到ray这种分布式优化超参数的东西,说不定以后机器学习不用手动调参了。

大作业我们组做的是VR办公系统,我放到了个人主页上VR Fancy Office (ustc.edu.cn)。通过大作业学到了很多,比如如何编写VR交互项目,如何设置层次清晰、模块化的应用框架等等。

考试开卷,没有像其他班一样考一堆背书题,这些分析性质的题目应该大意对了就会给分的(可以看出优秀率限制让一部分课程的考核完全扭曲,再次大声感谢jwc)。我觉得科大应该所有课都像H课这样上,大家努力学知识就能拿到满意的成绩,反观一些课程,比如代数结构(考试太简单导致在一些毫无意义的地方扣过程分),这些课完全是计科的糟粕(建议学弟学妹去学代数学基础,难一点但是阳间得很)。

最后给分超好,我考试正常写(有少量粗心,比如纳秒当成微秒),实验照着文档要求完成然后做一些能力范围内的附加分,最后的报告也没有很卷,就是描述了环境配置的大体步骤和最后的实验结果,大作业没有上限(我选题的项目如果真要当一个工程去做的话可以做够一年),就有空的时候做做,做到最后一天把之前成果封装一下然后去答辩,貌似反馈还可以?总评给了96

(最后修改于 1 3 复制链接
gxjsnbx请问你修代数学基础了吗?想知道代数学基础的学分算不算自由选修的有效学分(如果也修了代数结构的话)
feidun回复 @影: 没有,但是教秘说超过模块要求的学分都算自由选修,按这个理解代数学基础也算吧
gxjsnbx好的,谢谢!
立即登录,说说你的看法
Catoverflow 2022春
  • 课程难度:中等
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:一般
  • 难度:中等
  • 作业:很少
  • 给分:超好
  • 收获:一般

作为2021的同学:

OSH 一直有个说法就是除了 OS 啥都讲(其实是很多理念是跨领域的)

课程内容应该和隔壁 OS 差不多,但是老师上课会聊很多别的知识,上课氛围是很轻松的。

课程小实验上感觉连续性不够,从 lab1 到 lab4 分别完成内核裁剪、Shell、多人聊天室和 ceph 部署,和其他学校一些自己构建操作系统的实验相比有点零散,可能这也是上面那个说法的来源之一吧。据说最后一个实验是老师出的,在做的时候被不可能实现的要求坑了好久(指全班都没人成功在树莓派上跑起来过 ceph),而且 ceph 的文档比较乱,打个比方就是 py2 和 py3 的文档混一起了,而且旧版的脚本还更好用但是需要修。

大实验我自己是没什么特别好的思路的,一直到中期还在纠结要不要换题,最后被大佬的 unikernel 带飞了(我 x86 汇编太烂了很难贡献多少)。选这门课的同学一定要在选题上有充分的调研,及时和老师还要助教讨论,我们这个学期有个组就没有做完(饼画太大),不过最后给分好像也还不错。

老师是不公开往年卷的,需要参考的同学记得及时在讲题课上拍照。

总的下来拿了 A 顺便被卡了绩

大作业答辩课上的炸鸡真好吃,因为和助教都在 lug 所以最后剩下的拿到活动室多吃了一点


作为2022的助教:

其实在学期开始前就有重构实验的想法,也和老师聊过了。但是因为自己假期都在干别的事情(而且摸多了)没有完成,最后也不知道为什么老师就和另一个助教把实验定好了,大体上还是之前的设计。这次我负责 lab3 的出题和批改,和之前相比加了个关键区无锁的要求,这个方向有所调查的同学应该也会有不少收获(不过因为这里文档要新写一份,没有写得太好,引导太少了)。总之就是感觉我要为实验的祖传背点锅,现在已经不需要提别的学校了,隔壁 OS 都设计得比较好了,哭了(

如果下次还是助教的话一定补锅(

这次因为答辩太晚了,我先回家准备 GRE 了没有吃到炸鸡呜呜

(最后修改于 1 1 复制链接
Flurry一年了,还在想念炸鸡呀(狗头)
立即登录,说说你的看法
  • 课程难度:中等
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:很多
  • 难度:中等
  • 作业:很少
  • 给分:一般
  • 收获:很多

还没出分 先来评价一下

 

怎么说呢 教学资料比较简陋 很多关键内容靠老师讲课

 

大作业折磨了一个学期 但答辩当天爽吃炸鸡 太爽了

 

这门课除了操作系统什么都能学到

(最后修改于 1 0 复制链接
匿名用户 2022春
  • 课程难度:困难
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:困难
  • 作业:很少
  • 给分:一般
  • 收获:一般

太煎熬了

4分给大佬队友

 

顺便隔壁lyk老师的实验看起来是比H班的实验要难了,实验体现的思想也有意思,推荐一下,这个暑假我也会做一做看看

OS 2022 Spring (ustc.edu.cn)

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

室友是隔壁非h班的os,考试周复习的时候稍微交流了下,高下立判。 邢老师的课件思路清晰,深入浅出,上课也讲的很好,我觉得是对的起H课的名号的。 课堂实验难度从简单到困难,lab4还涉及到前沿的文献阅读。 大作业的话选题要和老师助教(其实主要还是老师的意思)多沟通,然后要抱个大腿不划水吧...项目要切实可行,避免画个大饼到期末却做不出来的情况

1 0 复制链接
cryptonym 2016春
  • 课程难度:困难
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:困难
  • 作业:中等
  • 给分:超好
  • 收获:很多

感谢老师给予了我本科期间一次完整的做研究的经历。从读文档开始,到理论分析,实验论证,再到最后的报告和幻灯片,感觉收获颇丰。另外,我非常有幸能和几个小伙伴一起做好一个项目,过程十分欢乐。

       另外,有人说老师的操作系统课本身讲的不好,反而在项目上花时间过多。我想说的是老师的操作系统讲的通俗易懂,高屋建瓴,只是省去了很多细枝末节的内容,所讲内容的难度和广度甚至略高于另一个班。考试、作业也颇有难度,试题较为开放,而正因此更能体现一个学生对系统的设计能力。

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

xk老师我爱你!有时间再补细节哈哈😄

0 0 复制链接
gxjsnbx 2022春
  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:一般
  • 难度:简单
  • 作业:很少
  • 给分:超好
  • 收获:一般

上来先感叹一波邢老师给分奶的程度,我上大学以来遇到的所有老师里,如果不是最奶,至少也是前三!!!

上课:邢老师上课内容偏简单,整体上轻松愉快,并不像隔壁codh那样一板一眼,不过这也就导致可能书上各种细节不可能面面俱到,但是个人认为这种讲课方式比照本宣科的讲课方式要好很多,毕竟上课讲的细节太多很容易导致抓不到重点,反倒啥都没记住.......

作业:完全没有书面作业!

实验:分为小实验和大作业。小实验为4必做加一个附加,附加实验每个人都不一样,需要单独联系老师要题目,最后5次取4次最高。注意:想拿高分,附加一定要做!!!最后总评表明,邢老师并不是严格按照开学给的公式给分,即使前4个lab满分了,做一下附加一定会在总评上体现出来!大作业是组队完成,4-5人一组。正如其他同学所说,大作业抱大腿至关重要,并且在大作业这一项的得分上,所有组员是一样的,不存在按贡献度分配的问题(老师上课也会讲,能者多劳,实在是太体谅像我这样的小白了呜呜呜)。此外,大作业占比很高,一定要投入足够的时间稳步推进,不能最后速成!

考试:全开卷,一定要打PPT(课本都可以不带),因为老师会特意出一些上课讲过的书上没有的东西(这些大多都很简单)。整体来说前面70分除了有点灵活外还算简单,最后一个30分的分析设计评价题就实在无从下手了(考场上全靠胡扯bushi~)考试占比不高,并且大家都差不多,所以尽力就行~

最后,如果想更进一步学好操作系统,强烈推荐b站NJUjyy老师的操作系统课程,你会体会到什么叫硬核(结课后才发现宝藏,血亏~

0 0 复制链接
H_101 2020春
  • 课程难度:困难
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:一般
  • 难度:困难
  • 作业:中等
  • 给分:超好
  • 收获:一般

整体分大作业 期末考和lab

lab部分体验很好,虽然有时候debug还蛮肝的,但是整体设计已经比较完善了,参考资料给的比较恰当,会培养一些基本习惯,然后督促你自己去search一些奇奇怪怪的东西。作为上os之前对linux不怎么熟的人,经过几个lab还是明显感觉到知识有增长。

讲课部分,os这个课实在太零散了,如果之前对整个课程框架没有一个基本了解,听前几节课很煎熬,完全抓不到点。其实这门课本身就是讲一些基本概念,但是前几节课又把角度拉高,体验不太好。后面大致就是分章节来,感觉稍微好一些。不过讲课部分和lab的联系不怎么大,而且没有平时作业,平时完全没做题。

大作业部分,刚开始要挑题目完全没方向,还会大量引起焦虑。大作业的内容和上课讲的内容其实也没什么联系。其实就纯靠大佬带。要做中期和结题报告,其实还是看立题和报告吹的水平,不怎么关心技术内容。

期末考试,70的基础,30的应用。应用今年考的人工智能并行背景,那30分的应用实在比较傻,五六个小问,每一问都是来回绕着那两个关键点答,答到自己都觉得莫名其妙,最后分数来看应该也没咋扣。

0 0 复制链接
坠落的秋叶 2018春
  • 课程难度:困难
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:困难
  • 作业:很少
  • 给分:超好
  • 收获:很多

一定要选好题!多和老师沟通选题的事Orz...

0 0 复制链接

邢凯

教师主页: 戳这里

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

未知 2017春

邢凯老师的其他课

量化金融工程:从理论到实践 9.8 (6) 2024春 2023春...
计算机导论 2012秋