![]() |
|
教学公告
《操作系统课程设计》开篇:一场深入计算机心脏的硬核旅行
-------------
To: 勇敢的 2023 级探险家们
From: 你们的 OS 课程领航员
-------------
大家好!
欢迎来到《操作系统课程设计》这门有点“特殊”的课。说它特殊,首先因为它是“必修”,虽然只有区区1个学分,但想毕业,谁也“逃”不掉。更重要的是,这门课将带你暂别舒适的应用层,潜入计算机世界的“深海”,亲手触摸那些支撑着整个数字世界的底层逻辑。这会是一场充满挑战但也绝对酷炫的硬核旅行。
在出发前,请仔细阅读这份“探险家指南”:
-------------
1. 我们的座驾与地图:xv6-riscv
本次探险,我们告别了庞大到令人望而生畏的 Linux 内核,换上了一艘更适合教学的“敏捷型潜艇”——xv6-riscv(源自 MIT 6.1810 课程的经典平台)。它代码凝练,设计优雅,是让你能真正“看透”并“玩转”一个操作系统的绝佳起点。
【后勤保障】:我们今年的探险队规模依然庞大(课表显示足足有237人!),所有“任务简报”(实验说明)和“集合地点”(实验提交)都将通过学者网发布。我和助教们会提供详尽的中文向导文档,请大家务必保持通讯畅通,常看年级群,别错过任何一个重要的“补给点”。
【教学与考核】: 此门课将基本遵循之前的线上教学模式。在每次布置实验任务前(今年已经确定为5次),我会在教学站点(学者网)上发布一个较为详细的实验过程和说明文件(包括基本的实验环境搭建),并会要求各位同学在规定的时间内上传实验报告/作业,以此作为期末的评分依据。
【探险家求助指南】: 在这场硬核的旅行中,遇到难题是常态,学会如何高效解决问题正是本课程的核心目标之一。我们推荐大家遵循以下“三步走”策略:
第一步:成为独立的侦探。 优先利用你最强大的工具——搜索引擎和AI大模型。学会精准地描述你的问题,通常90%的疑问都能在这里找到答案或线索。
第二步:启动团队协作。 如果独立探索后仍无头绪,不妨求助于身边的“战友”。同学之间的讨论和思想碰撞,往往能点燃灵感的火花,这也是构建学习共同体的绝佳机会。
第三步:呼叫后方支援。 当你和同学们都已尽力尝试,仍然无法解决问题时,请整理好你的问题、你已做过的尝试和具体的报错信息,再向助教寻求帮助。清晰的问题描述将帮助我们更快地定位并解决你的困难。
-------------
2. 为何要“造船”?—— 系统编程的内功心法
我知道,在座的各位很多都是未来的AI算法大师、炼丹宗师,习惯了在 Python 里优雅地import一切,成为一名快乐的“调包侠”。那么,我们为什么非要“自讨苦吃”,去关心底层这些“脏活累活”呢?
请想象一个场景:你设计了一个无比精妙的算法,它像一件艺术品,在你的电脑上跑出了SOTA(State-of-the-art)的效果。然而,当它被部署到实际系统中时,却发现系统的整体性能不升反降,甚至功耗爆炸。为什么?
因为再完美的“乘客”(算法/模型),也得坐上一艘可靠的“船”(操作系统/硬件)才能远航。如果“船”本身的设计不合理,乘客的体验甚至安全都无从谈起。这门课,就是教你如何理解“船”的构造,甚至亲手“造船”。它锤炼的是你的系统能力——一种能让你看穿表象、洞悉全局的“内功心法”。这种能力,无法通过刷题速成,也无法被任何奖项或绩点完全定义,但它会是你未来职业生涯中最坚实的技术护城河。
-------------
3. 你的AI副驾:是“神队友”,不是“方向盘”
我们身处一个伟大的AI时代,你拥有了史上最强的“副驾驶”——大语言模型。我强烈鼓励大家用好这位副驾,让它帮你理解代码、调试Bug、甚至生成代码片段。学会写高质量的提示词(Prompt),本身就是一种新的核心竞争力。但请务必记住:AI是你的副驾,而你才是手握方向盘的驾驶员。 AI的回答质量,完全取决于你提问的水平;而提问的水平,则源于你扎实的专业基础。如果你把方向盘完全交给AI,满足于它给出的“一键生成”方案,那么当系统出现诡异的Bug时,你和AI只会面面相觑。所以,请尽情地与AI共舞,但永远不要放弃“肉身Coding”带来的思考与成长。
-------------
4. 游戏规则:一份关于“躺平”与“封神”的契约
“老师,这课好过吗?” —— 每年都有人问。
坦诚地告诉大家:这门课的通关下限很低。 如果你只想“安全”地拿到这1个学分,那么按时提交实验报告,写对名字学号,你大概率会获得一个体面的分数。
但是,如果你不满足于此,这里也为你准备了一条通往“封神”的道路。
(1)“普通玩家”模式:跟着我们的文档,完成5次实验,你会对OS有基本的认识。
(2)“硬核玩家”模式:除了完成基础实验,请主动通读 xv6-riscv 的全部源码,反复咀嚼;再去挑战一下 MIT 课程官网上那些我们没有要求的实验。
(3)“地狱模式”:独立思考,先于网络搜索和AI,尝试自己解决问题。当你绞尽脑汁后,再去参考别人的优秀代码,你会体验到豁然开朗的极致快感。
选择权在你手中。你可以选择“抱佛脚”通关,但这无异于入宝山而空回。我真诚地希望你不要浪费这次宝贵的机会。你的每一分额外付出,都会在最终的成绩单上得到响亮的回应。
-------------
5. 终极召唤:代表华师,出征国赛!
课程的终点,是另一个更广阔世界的起点——“全国大学生计算机系统能力大赛”(操作系统设计赛)。
说来惭愧,作为一名连续三年指导此项赛事的老师,我常常在和外校同行交流时感到一丝尴尬。当别人问:“你们这种老牌211、双一流高校的计算机专业,怎么参赛的人这么少?”我竟一时语塞,难道要归结为“我师浓厚的人文特色”?
事实是,我们在系统能力培养的氛围和实力上,与主流强校相比确实存在差距。但我坚信,差距不是借口,而是我们奋起直追的号角!过去三年,我们并非没有勇士:从物理学院的同学开疆拓土,到软件学院的同学斩获国二,再到今年转专业的同学坚持到底拿下国三……他们用行动证明了,我们有能力,也应该在全国的舞台上发出更强的声音。
所以,在此,我向2023级的各位发出最诚挚的邀请和最急切的呼唤:今年年底的省赛,与明年暑期的国赛,我渴望看到更多来自我们本院的队伍,能够挺身而出,踊跃报名,并肩作战,坚持到底!这门课,就是你们最好的赛前集训营!
最后,我们的中文实验文档也在持续迭代中(正与xv6的2024版内容适配),若发现任何纰漏,欢迎随时“开炮”!
祝各位,旅途愉快,Bug退散!
-------------
【后勤补给站】
- 2021级谭宇亮OS国赛心得
https://www.scholat.com/course/V_courseOneNotice.html?courseId=100¬iceId=5395
- 2022级周晟OS国赛心得
https://www.scholat.com/course/V_courseOneNotice.html?courseId=100¬iceId=5396
- MIT课程主页 (2024):https://pdos.csail.mit.edu/6.828/2024/schedule.html
- 学者网课程站点:https://www.scholat.com/course/scnuos (密码: os2025,请加入对应班级,这里是领作业和交作业的地方)
- xv6源码视频讲解https://www.bilibili.com/video/BV1w94y1a7i8/?vd_source=6a2d0695bb980cee3a790ce24df0c212