操作系统原理与设计(李永坤, 王志强) 2026春  课程号:01117402
2026春  课程号:01117402
(暂无评价)
(暂无评价)
  • 课程难度:你猜
  • 作业多少:你猜
  • 给分好坏:你猜
  • 收获大小:你猜
选课类别:计划内与自由选修 教学类型:理论实验课
课程类别:本科计划内课程 开课单位:计算机科学与技术系
课程层次:专业核心   学分:4.0
简介 最后更新:

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

排序 学期

评分 评分 5条点评

匿名用户 2026春

今天是lab2的第一次检查。夸夸助教,非常乐意听取学生意见,甚至主动询问学生认为的这次实验的不足,并且逐条记录,助教也主动解释是因为这次实验准备时间不足,考虑到理论课进度,把后面的实验提到这次,所以写的比较仓促,针对同学们提到的问题都会在后续实验中避免。我也相信后续实验会有较大提升!


再更新一下,助教似乎看到了这条评论,撤下了Lecture Companion的相关内容。由于学校gitlab不可访问的原因,延长了hw2的ddl。同时也修改了git拉取有关代码使用origin拉取的问题。目前来看,助教还是愿意听取学生意见的。期待后续实验内容能有更好地呈现。


回复一下评论区的朋友,这个实验文档有一些代码似乎都是未经审查的,存在一些打开并复制到vscode里就会被编译器提示报错的代码。包括助教似乎经常忘记学生拉取代码需要从upstream拉取而非origin拉取,让我对这个实验文档的质量存疑。

诚然,我自己也是纯vibe coding完成的实验,但这与课程实验的初心可能不太相符。过大的作业量和黑话满篇、不说人话的实验文档会让更多的学生“纯”vibe coding完成,而难以理解为什么要这样写代码,也缺失了实操的过程,造成事实上的“劣币驱逐良币”。


学期还没结束,这个实验文档看的我火大,来评课社区喷一下。

助教自认为自己很懂vibe coding, 于是这学期的所有实验产品,包括基础系统代码、实验文档、实验脚本基本都是vibe coding的产物。特别是实验文档,gpt味大的批爆,助教是直接拿codex生成的文档就弄成实验文档了吗😅?我读完我都要被助教的codex“稳稳地接住了”。文档理论上是给学生读的,不是给ai读的(当然如果真的是给ai读的那这一切就太合理了),拿着一个黑话满篇,“稳稳接住”的文档交给学生开始做实验,鄙人不太清楚助教的具体想法,以及助教是否真正尊重学生。

另外,本学期hw2的作业量尤为逆天,不太清楚是不是因为助教没有读过本科就直接读了研究生,不知道这些作业如果手搓需要花多少时间。当然,如果助教默认大家全部vibe coding的话那我无话可说。

关于文档”稳稳接住你“,文档链接在此 http://home.ustc.edu.cn/~pzw2002/ ,以下是一些实例,给大家添添乐趣。也欢迎大家在评论区持续投稿。

不是为了让大家“把实验交给 AI 来做”,而是希望大家尽早建立更稳妥的使用习惯

--摘自Lab简介

本实验的重点不是"重新实现一次模型推理",而是把 HW2 中已经能运行的用户态推理后端,封装成一个更像操作系统服务的接口

--摘自hw2

这份文档不是课件提纲,而是给你课后自己读代码用的“导航图”

--摘自Lecture Companion CH2(我想说,哪个正常人类会说“导航图”这种话?是嫌“地图”两个字太简洁太易懂吗?)

CLI 不是"命令合集",而是"命令调度器"。

--摘自Lecture Companion CH2

这一章的目标不是证明"仓库已经实现了 pthread",而是帮你看清:线程为什么比进程更轻;一个可调度执行流至少需要什么状态;当前代码如果将来要支持线程,最可能从哪里改起。

--摘自Lecture Companion CH4

这份文档是给你课后独立看进程代码用的,不是课堂提纲。

--摘自Lecture Companion CH3

也就是说,syscall 编号、分发和用户态封装基本都已经准备好了。你在必做部分真正要补的是 ai_service.c 中的控制逻辑。——Lab2

也就是说,用户态看到的同步接口可以保留,但底层不应再绕开异步 service 主线。——Lab2

也就是说,你只需要把系统调用层打通到 fileioctl,不需要在 sys_ioctl 里直接处理具体 GPU 命令细节。——Lab1

所以最贴切的描述是:单内核实现 + 模块化代码组织。——CH2

先建立一个最重要的区分:Program vs Process

--摘自Lecture Companion CH3

先把边界说清:当前仓库还没有完整线程实现

--摘自Lecture Companion CH4

直接先说结论:

--摘自Lecture Companion CH4

从一个真实动作开始:在 shell 里输入 pid

建议你先在系统里实际运行一次:

pid

然后按这条路径阅读代码:

--摘自Lecture Companion CH2

从一个真实程序开始:先运行 pingpong

建议你先在系统里实际运行一次:

pingpong

然后按这条路径阅读代码:

--摘自Lecture Companion CH5

(最后修改于 9 9 复制链接
威猛先生一枚个人见解,觉得助教用vibe coding写文档,如果是自己检查过了内容没啥问题,倒也没啥不可接受的吧。语言有点AI味好像也无伤大雅吧。
TheBunniestForever题外话,我觉得全员vibe coding是好文明,计科本科那些课的清朝实验本来对大多数人也没啥意义;当然我尊重和支持有人对AI味的实验文档和不合理的实验安排表达不满
66ccff回复 @TheBunniestForever: 我也觉得
TheBunniestForever假如说助教自己没跑通就端上来的话确实难以接受了,我觉得用不用AI都好说,正确性是最底线的要求
amsors感觉这课程文档可读性真的好差.......
三小离这个实验文档真的是人类可读的吗,真的读崩溃了
一条金枪鱼dl,实验文档读起来好痛苦......感觉成为了ai play的一环(
Arghena文档里的origin和upstream卡了我好一会
RIKKA回复 @amsors: 深有同感,已经很努力在看了但是仍然很难理解,专有名词太多了
立即登录,说说你的看法
匿名用户 2026春

  其实我对于 ai 写实验文档这个事情倒是没有太大的抵触。但是就是一点,对于没有接触过的人来说,这份文档太难懂。

  可能助教因为已经比较理解操作系统的东西了,所以看了文档觉得没有问题?(总不能没看过吧

  但是我个人读这个文档还真是有点痛苦的,首先是作业部分的文档,老师说课后作业都是对实验的一些提前预习(说到这里,老师真是一个很好的老师,会开玩笑,会讲道理,也体谅学生

  但是这个作业好像有点难了,lab1的作业还只是看了配套阅读材料,回答一些小问题,文档里都有答案。lab2的作业就开始要一些实操了。但是总感觉这个文档有些说的不清不楚的,我有点不太确定哪些是必做的,比如tokenizer依赖,文档里说的是“如果要使用….完成文本和token id 互转”,对于我这种只想满足最小要求的人,对于这种如果都是当作不需要的,(因为本身也没有想往这方面深入),但是在作业要求文档里面又让我们至少先完成这个tokenizer依赖内容,再做part1….

  然后是这些文档,这个文档阅读实在是有点一言难尽,就是有一种自学很困难,但是会了之后再看就理解的那种中国教材的感觉。(?反正我是这么个感觉,刚看这个文档我是真的不知所云,只能让 ai 帮我看看,我需要弄清楚什么然后要完成什么。

  关于vibe coding,助教其实写了很多 ai 工具的文档,也给了很多 ai 工具的推荐,我平时也是 vibe coding,我倒是没什么想说的。但是我记得实验一还是实验零的时候有个 agent.md,大概意思是说,ai 不能直接给出代码,而应该对用户的代码进行分析和解释,然后后面的实验我又找不到这个文档了?

  还有实验检查?感觉几个助教好像对我们实验理解有不同的要求?在406检查的有时候会遭遇拷打,我计时过一个蛮长的实验检查的时间,他被提问拷打了快17分钟(?

  说实话我感觉有点长了,这个助教检查一个人的时间,另一个助教可以检查3个人。不太懂各个助教的内心底线。

   总之感觉这个革新的实验还是需要点优化吧,这门课的课后时间已经超过我平时计组实验和CTF加起来的时间了。还真是有点困难。

  这次 lab2 虽然给了三周时间,但是由于还有量物期中考,去掉备考时间,感觉也没有多很多。

 

  (另外实验尽量不要快到 ddl 了在写,很危险,一是实验本身有些困难,可能不是那么快写完的,二是 ddl 那天检查会有很多人,而助教检查时间又比较长,时间上并不是太划算。

1 0 复制链接
匿名用户 2026春

不谈别的,就Lab2实验文档在仔细听取头一批检查的同学的建议之后,针对痛点逐个改进,大大丰富优化了文档内容和编排而言,确实能为助教的工作打好评。助教也说Lab2留给他们的时间太少,所以没有做好,我认为是情有可原的

(最后修改于 1 0 复制链接
匿名用户 2026春

实验检查现采用QQ群里发所在实验室门牌号+学号的方式,按照发送顺序,助教在教室固定位置依次喊人来检查,检查通过助教会长按你的消息回复一个大拇指或者OK的符号,目前叫人的方式是直接扯嗓子喊。真的不建议清口喊人,坐在406教室的中后段很难听到,尤其是有窸窸窣窣的交谈声的时候,既然已经在QQ群里“接龙”了,或许可以考虑更进一步,直接用临时对话喊人?虽然可能带来其他问题,但是至少可以减少漏听漏号的问题,实验室也安静一点。406还有额外的debuff,因为406的同学特别多,是408的2倍左右,所以在高峰期会配3名助教检查实验,408一般只有一名,但是常常会出现408的消息下面一串大拇指,406只有零星几个大拇指的情况,甚至408空下来开始接收406的同学来检查让人特别捉急啊。至少是刚开始的一两个小时,平均每位同学要检查5到10分钟,期间接收助教的不断拷打,408的情况不太清楚,看上去效率是很高的,再加上406频繁的“跳号”和跳过的号“插队”,情况更是雪上加霜,不过也是神奇,最后基本上每条消息下面都有大拇指,除了可能是因为时间接近9点半了有些忘记或者来不及回复大拇指了。这标准相差的也太多了吧

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

王志强

教师主页: 暂无

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

李永坤 9.1 (42) 2024春 2023春...
李永坤, 吴思 8.9 (9) 2022春
陈香兰 7.9 (52) 2026春 2025春...
李永坤, 徐伟 7.0 (1) 2025春 2024春
未知 2017春 2009秋...
熊焰 2013春 2010秋...

李永坤老师的其他课

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

王志强老师的其他课

数据结构A 2025秋