您的位置 首页 知识

操作系统课程设计(计算机系也有设计课?操作系统课中的设计)

操作系统课程设计
说起计算机系,大家脑海里的大多浮现出满行代码、拆装芯片、搭电路修电脑。而加入了伯克利计算机系的两年半来,我才发现计算机系不止计算机。

 
计算机作为一门科学学科,少不了数学和统计为理论撑腰,同时,计算机作为一门工程学科,也少不了架构设计和测试。
 
伯克利的计算机专业要求里有一项设计课,我总是对这个标题匪夷所思:我心目中的设计还是画画、填色、分析美学和心理学,怎么和理工科有关呢?
 
这学期,我有幸撞上了一节计算机的“设计课”:计算机操作系统Operating Systems,好好体验了一番计算机中的设计课。

 这周的第三场期中考为这节课画上了句号。每一场期中考都标志着我“设计”体验的转折,从发懵到绝望到好奇到大爱,可谓一顿拳打脚踢让我从外行人转为行家,开启了对工程设计的全新理解。 第一次期中考
初入这门课时我信心满满:伯克利计算机系的各路难课我都见过了,算法也好硬件也好,这一定难不倒我!结果,一开课立刻打脸,我甚至压根摸不着北。
 光说什么是计算机操作系统,我就一头雾水。我的电脑又光又滑的,哪个算系统?教授根本没给我喘气的时间,激动无比地讲着他太过熟悉的系统,满是细节和专有名词,谈这个设计的局限性、那个硬件的优势,让没背景的我分分钟石化。 不过,光听他说说还是挺乐呵的,可作业和project一到就真让我无从下手了。编程本就不是我这个艺术生的本能,又见到这我不知道前因后果的架构,真叫怀疑人生。
 小组项目更有意思,提纲只说要求,具体的方式完全由我们决定。读着三十几页的项目大纲,我只能逼着自己提出设计的点子,边提边心虚。课程设计逼着我们统筹架构设计,不能一头扎进已有的细节里。 于是,在蒙圈和绝望下,第一场期中考试已到。我只记得我边考边叫唤:真是没有一道懂的题,系统设计到底在做什么!? 第二次期中考
学期的前半段,每次和课友视频做作业定少不了吐槽对这节课的痛恨。但是,叫唤完了还不就继续学?就这样,亦步亦趋、每个作业都在悄悄地变得简单起来。
 我开始明白,我过去对系统的不了解导致我对设计系统不自信,常把简单的问题变得复杂化。原来,把提纲读清楚、然后用自己的方法达到课里讲过的设计效果就好了。 同时,课内更多的内容也让我明白了困惑我许久的“系统是什么”。其实系统就是不同处理器和内存和网络等的协作,而这节课就是要弄明白大框架,再学会如何搭建其中的系统。
 第一场期中考前我对讲座丧失了兴趣,因为发现它无法在写码作业里帮到我。而考试让我明白,大多有趣的信息和框架性概念来源于讲座。有目的性地听课,也让我感觉讲座越发出奇地好玩。 新的作业让我全凭自己做出了几个有趣的小系统,让我尝到了系统和逻辑的甜头,带我看到了光鲜的操作系统背后的原代码世界。哼,我也可以呀!第二场期中考里我总算稳稳地超过A线。
第三次期中考
学期悄然流去,在这节课上的投入和进步让我一层层剥开操作系统的面纱。有一层我迟迟没领悟,也就是从零开始设计系统:我项目组的设计文档总被打低分。
 设计文档点评会总是我们的噩梦:哪怕架构考虑地挺周全,也一定会被找出特殊状况里的漏洞;哪怕投入精力确定各个设计达标,也一定会被查出漏了个不起眼但至关重要的要求,被小老师丢脸色看,难啊。 于是,在最后一个学期大项目里,我和队友们决定要多花力气扳回一城。回顾前两个设计文档,我们确实有些草率:大纲里说了什么就做什么,缺少系统的思考、和用极端案例测试迭代。
 这次,我们不再只用两小时小组通话草草敲定设计文档,而是连着几天一有空就通话聊想法:这样设计内存会碰到不符的数据,可以加这个结构;不,那样可能碰到另一个状况,我们可以试试这样… 我惊奇地发现,这些讨论不仅仅让我们离高效方式进了一步,同时让我很自信又自然地思考系统设计的每一个细节,自如地提出新的设计点子。 直到这期末项目,我才如梦初醒地理解为什么这节课是一节设计课:我们要理解所有的工具和零部件,明白可行性和功效,最后要能上手创造出我们独到的设计。
 前两天看到讲WhatsApp发短信的系统结构、和Netflix存储视频的网络结构的视频,我非常轻易就能理解白板上看似唬人的结构图,替他们想架构的优势和问题。这些,都是这学期里学到的技术工具,外加设计思维呀。 最后一场期中考我很坦然:尽力学的总会了,还没掌握精通的也心知肚明。回看一学期的挣扎和进步,我觉得很值得。 

 所以,计算机的设计是门与艺术生的设计不同的学问,但都注重打磨工具,好比熟知色卡搭配和曲线直线运用,而后在实践里实操方法,调试设计的目的、明白每个设计选择。
我想,大学里没做成一位艺术设计师亏了吗?没想到,计算机的设计世界也这么好玩。恍然间,一学期已过,酸甜苦辣都有。打包新知识、准备下一程!(插图来自网络)往期文章:不是每条路都笔直|我的曲线规划有没有一个瞬间你突然感觉成长了伯克利的满分线上课时差9小时的亚马逊实习生生活反常识学习:实习与上课线上亚马逊实习体验+近期读书推荐请让我用简单的语言,告诉你为什么数学很可爱大二六节好课,开启新一年
2020第一天,我位处以色列边界小镇喂鸭子为什么大二工作量变大却更轻松了?被拒千万次还要笑着相信自己|伯克利社团招新在东京读夏校是什么神仙体验?

操作系统课程设计相关文章