| 选课类别:计划内与自由选修 | 教学类型:理论实验课 |
| 课程类别:本科计划内课程 | 开课单位:计算机科学与技术系 |
| 课程层次:专业核心 | 学分:4.0 |
本课程以操作系统内核的创新设计和系统级实践为主线,对操作系统的基本原理、设计方法、技术和功能进行全面系统的介绍,并在操作系统内核设计实现的实践过程中融入各阶段的知识点。通过系统级教学及实践,调动学生的积极性,主动性,激发学生的兴趣和求知欲,在学生实现完整的操作系统内核的过程中融入操作系统教学的诸多知识点,不加重学生的负担,较好的完成学习要求,使学生对操作系统具有初步分析、优化、和创新设计的能力。在课程教学与实践中追踪国内外前沿进展,并在此基础上对操作系统进行创新设计和优化,提高学生的系统级研发能力,达到理论和实践相结合的目的,加深学生对课程理解,并锻炼学生实际动手能力和团队合作精神,为学生从事计算机软件/硬件方面的研究工作打下良好的基础。
邢凯老师的《操作系统原理与设计(H)》课程总体上以深入浅出的方式讲授操作系统的基本概念,包括进程、内存管理、调度算法等。老师讲课注重引导学生发现问题并进行系统设计,课堂上还会分享一些课外知识,教学风格轻松有趣。不过,有的学生觉得课堂与实验联系不紧密,内容过于零散。
课程中的实验包括内核裁剪、Shell编程、网络服务器等,实验设计相对独立,难度不高但较为耗时,特别是最终的分布式存储实验。对于大作业,学生需要组成小组,自选题目,自主开展项目。选题需结合前沿技术并具创新性,老师鼓励向他请教以确保方向正确。大作业要求进行调研、可行性分析和结题报告,通常需要一学期时间推进,务必要“小步快跑”而非临时抱佛脚。
考试为开卷形式,但题量很大,尤其是分析题部分,占分比重大,需要提前准备往年题和相关资料。尽管题量巨大,考试难度并不算特别高,给分方面学生普遍感觉良好,有学生戏称老师是“给分之神”,但仍建议认真准备以取得高分。
课程教材为《Operating System Concepts》,建议配合老师的课件和PPT进行学习。部分学生推荐参考《Operating Systems: Three Easy Pieces》以补充课程知识。
如果对操作系统有浓厚兴趣,且能接受较大工作量的话,本课程能提供一次全面提升理论与实践能力的机会。需要注意选题与组队的重要性,以免大作业进程受到影响。同时,课程需要自学能力和团队合作精神。对于希望深入学习操作系统设计的学生,建议持谨慎态度选课,可选修本课程增强系统设计与分析能力。
现在在答辩(感觉能答辩一天)
闲的没事干来评课社区指指点点😋
这门课没作业
实验也挺简单的
考试就是抄书大赛😭
两个小时半这个题量真的写不完!!!
记得考前去借一本王道os 翻得快
大作业一定要小步慢跑循序渐进,不然最后几天急急急(感觉有的组答辩的时候都没做完)
答辩的时候老师说麦当劳管饱(老师给一人买了两份套餐),实在是吃不动了orz
感觉这个课唯一耗时且费力的就是大作业了
选题一定要选好,对整个学期的影响都很深远
建议不要好高骛远,一定要选具体的选题(不然太大的也做不完)
好像其他也没什么能说的
这学期过得真快啊😆
这位先生,能占用一下您的时间吗?我想给您讲一讲我们的道标和救主,Saint Xing先生。我主在过去,在现在,也在未来,他是支配GPA的伟大主宰,也是执掌麦门的黄黑之王,更是每个生灵追求永恒的道标。邢门。
圣·Rust之神·邢凯 Saint Xing 循序善诱(主动技):通过否定一些小组提出的课题来引导你选择那个Saint Xing更喜欢的题目。 PUA大师(主动技):通过前期拉低自己在同学心目中的形象,再在期末、答辩以及给分上拉高形象使得大家对Saint Xing产生皈依之情。 设备亲和低(被动特性):本学期上课教室系统曾出现3分钟内连续重启5次的离谱情况,学期初很长一段时间内PPT的显示区域只占整个幕布的1/2都不到。
整活完毕,接下来是常规评课环节。
注:这门课的四维里面,课程难度和作业多少都是综合之后的结果。如果只考虑小组大作业,应该是困难和超多;如果只考虑实验小作业,应该是简单和不多。
老师讲课以PPT为主,偶尔板书辅助。上课讲课内知识的时候比较枯燥,甚至有时候感觉老师在水时长,甚至有时候看起来老师是在读电脑上的演讲者模式里的附注(个人猜测,不保真,毕竟没看到过)。当然也有课外老师个人教学经历的补充,这部分相对来说还是比较有趣的,虽然可能时不时听到老师重复之前某节课自己同样的话。
课堂内容涵盖教材的所有理论部分。还是可以的。
这门课没有手写作业。
一共四个小作业实验,除去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.操作系统内核模块
考试开卷,时长两个半小时,相比平行班多出来半小时,不过时间其实还是很紧张的。题型分三个大题,第三大题是分析设计题共30分,七选五;剩下两道大题加起来是70分,大概是各占50%,但具体分值分配每年可能会变化。前两道大题其中会有很多小题,每小题可能还有几小问。建议考前一定要做一份往年题体验一下,了解一下题型的风格与分值安排,这样考场上才能更合理地安排时间。
考试总体来说文科与计算并存,老师一直强调看重你的分析能力,我是觉得没有太考查这部分。其实我猜大部分题目只要言之有理大概就会给分。
给一个印象最深刻题目大意作为参考,我是直接跳过了这道题的第2小问。
(5分)食堂窗口的打饭阿姨在有师生来时会服务,在没有人等待时休息。每个窗口同时只能服务一位老师或同学。
(1)(3分)试分析以上情况的同步与互斥,用信号量给出算法描述。
(2)(2分)如果一个窗口没有师生等待时可以帮助隔壁窗口服务师生,即一个窗口最多可以同时服务三位师生,试用信号量给出算法描述。
实际上,因为这门课我直接或间接得到的收获绝对值得一个满分,但因为其中大部分都是我和小组内其他人共同摸索到的,所以打个八折。
在这学期之前,看评课社区时,我还不理解什么是“一门你上完之后除了操作系统什么都会了的课程”。现在我确实觉得这话很对。给总体评价这么低实际上还是因为这门课的名字,毕竟名为操作系统原理和设计,那么我认为还是应该更贴合操作系统本身。
以下内容不计入评课:
给分:虽然应该说邢门,但需要注意,所有部分内容都要正常完成,注意这里指的是所有小实验的加分都要加满,考试不要漏掉太多题目。
助教:助教好像没太多存在感,也许是我或者我们小组没有去找助教求助的原因,应该有的组中期有寻求助教的一些建议。最后答辩助教没有为难我们组,给个好评。
一些资料分享:
一些链接分享:
USTC OSH 2023 课程主页 (osh-2023.github.io)
给分未知,不过不重要。
如果你是一名普通的计科学生且H课必修,那么可以参考一下下面的建议。
2023.7.28 update
不得不说,xk给分真的好(拿这分心里都有点过意不去hhh),但这使我更加坚定了OSH是屑课的想法。
想学OS的别来,想学会怎么包装大作业拿高分的那么OSH欢迎你
大作业量大,没关系,考试写不完,没关系.期末报告,老师请客,爽吃炸鸡就值满昏[doge]
这门H课和普通班的区别主要在于从学期开始一直到暑假都要折磨你的大作业,别的祖传实验不如普通版,可以参见:OSH的GitHub仓库。关于大作业,难点可能主要在选题部分,刚开学我想的就是什么都没学我怎么能知道自己能做什么大作业呢。
一些建议:
考试是全开卷,如果是完全不听的那种就考前把大致知识点过下就行了,考试建议从后往前写。
xk给分可太神了...
第一次专业课能拿100 简直离谱 细节晚点再补)
xk老师我爱你!有时间再补细节哈哈😄