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

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

点评 写点评
排序 学期

评分 评分 31条点评

南山南 2022春
  • 课程难度:中等
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:中等
  • 作业:很少
  • 给分:超好
  • 收获:很多

20221224更新:

又到了选课的季节。我本学期担任计算系统概论A的助教,给我们班的人讲了讲vlab linux的一些简单使用(配置),不过来听的不多。如果你选了这门课(指操作系统),且打算使用vlab做实验(强烈推荐)的,可以查看我写的教程折腾一下电脑。(不过陈老师这门课怕是不好完全靠ssh,一定程度上还得靠桌面,因为qemu好像不能ssh;不过写代码的时候用vscode、需要运行的时候切到网页桌面用qemu也是不错的选择)

隔壁班不知道情况咋样,不过根据同学的描述,如果按照我上边的教程配置好那么对于做实验也有帮助。

限于本人水平,教程写的不咋地,可能有各种错误或者待改进的地方,欢迎评论区提出。

以下为原回答


省流助手:好好写实验,好好背书!

我是2022春上的这个课,这个学期由于jwc人为限制换班所以这个班人数不少。根据群里观测,老师给的优秀不少,不过高分上不去。


1 授课内容与实验内容

本课程使用的教材为《操作系统概念》的中文版,虽然教务系统上好像写的是英文版。需要教材中文或英文版本电子版课本的可以评论区邮箱留下,也可以通过其他联系方式。我尽量两天内处理。(不过也许过几个月我就把文件删了,所以想要的请抓紧)(跟我的计算机组成原理一样)参考书籍为汤晓丹的《计算机操作系统》,东区漂流书屋有。其实我觉得这个国产教材并不比那个课本写的差,也可能是翻译原因导致的。总之那本书的语言感觉不怎么流畅。也许对于英语大佬,看英语书更好一些。

授课内容为第一本书的前13章,每章后边的东西不讲,看也看不明白。

实验内容是从0搭建一个很简单的操作系统,本学期有6个实验,每次实验题目如下

  • 简单汇编代码输出
  • 搭建printf等输出函数
  • 时钟与shell
  • 内存管理
  • 进程的FCFS(先到先得)调度
  • 进程的其他调度与抢占式调度

听说比隔壁班更简单一些。我的实验全是满分或超满分,代码在这里,(2022/07/15更新:看见有人讨论代码开源问题,故删除链接)建议自己完成,不要抄;辅修人当我没说。

楼上tx同学说这门课考试比COD简单,不过我不这么认为,我认为这个课程考试比COD难。

2 老师授课水平

可以看得出来老师讲课还是比较努力的,可惜实际上还是比较无聊,听的人也不多。教室里感觉大致为均匀分布。其实感觉如果好好听会有不少收获,可惜我没好好听。

上课有几次点名,不是所有人都点,我记得大概是所有点名加起来把所有人点了三次。

老师的PPT做的很用心,除了实验;PPT满满干货全是重点,这个应该好好看,建议及时把老师PPT的内容打下来以做好复习,别像我一样。

老师身体状况不是很好,希望同学体谅。不过老师还是比较负责任的。

老师讲实验的水平有点一言难尽,而且抓不到重点,就算是有人提到的20年录课视频也一样;实验PPT也抽象得很;建议主要使用助教的实验文档。每周六早上会有实验辅导,建议每次试验都去那问问,实验会顺利很多。(心疼助教小giegie~被我麻烦了那么多次)

3 学习感受与学习建议

这门课应该是比较重要的一门课,建议认真学习。

不过老师实验讲的水平一般,实验文档抽象,实验布置时间不合理,所以扣一分。

我没学好这门课,暑假得回炉重造。

身边实验交不上的人挺多的,其实实验没那么难,不过不少人都拖ddl完成,那肯定会比较困难。建议实验下发之后尽快完成。

我的建议如下:

1 一定要及时复习,别像我一样考前抱佛脚。

2 实验自己做,辅修人可忽略这一条。

3 老师会给每个人一次实验延迟提交机会,使用延迟提交之后可以在固定ddl之后一周内提交且没有晚交扣分。前几次实验都比较简单,建议留在最后一次实验使用,或者不使用。

4 考前可以看看tx同学(评课社区id:txtxj)评论里的链接。

5 装好vscode或其他合适的文本编辑器如Sublime等(Visual Studio不算),学会gdb的调试,否则实验会比较困难。我看对着几十个文件用ubuntu自带的文本编辑器写代码的,这属实是困难。

6 学会一点简单的命令行操作。

4 给分与选课建议

目前根据少量水群得到的样本观测,这个老师给分不差,优秀率比较高但是高分上不去。

我个人实验还不错,考试寄了,背书背不会。好在老师捞我,最后总评3.7,可惜在拥有125学分的前提下,增加4学分的3.7并不能改变我GPA的百分位,呜呜

今年我们班似乎比隔壁班躺,任务量也小一些,选这个班在计科恶心人的大二下可以减轻压力,毕竟组成原理、【请文明用语】的量子物理、一堆可能数学课还是比较消耗精力的。可以考虑选择此班。

(最后修改于 3 2 复制链接
Flurry建议不要公开代码吧……是真的会有人直接抄的,而且陈班的实验多半不会有大更新了
南山南回复 @Flurry: 你以为今年抄的人少吗(

立即登录,说说你的看法

__________ 2021春
  • 课程难度:困难
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:很多
  • 难度:困难
  • 作业:中等
  • 给分:一般
  • 收获:很多

这条评论意在提供更多关于这门课的信息,尽量保持客观性

 

1.课堂:

PPT:中英文混杂,英文占比较大。尽管如此,相比于隔壁班的全英文ppt,理解起来却更困难,因为PPT充满了跳跃性,有些地方的英文语法也很奇怪。不过,PPT内容相比于隔壁班,更加全面,几乎是“恐龙书”《操作系统概念》的浓缩,期末时照着PPT复习是完全没问题的。遇见难以理解的地方,可以看看教材上的详细讲解。

讲课:基本上是对PPT上的内容进行通俗解释,理论内容为主。课堂知识密度较大,并且老师语速偏快,给人留下的思考时间比较少。如果听不下去课也没关系,可以自己翻看教材和PPT。

课堂有签到,尤其喜欢在小测后紧接着一节课签到,请务必到课。

 

2.作业:

前半学期,没有课下作业,所有作业均以课堂小测的形式进行,每两周一次,每次约10-15分钟。小测内容90%均为概念题,答案可在ppt上检索到,难度不大,但考验手速。

老师原定总共进行7次小测,占总评15%,但由于学期末课堂时间紧张,第6、7次改为课下作业,计算题、应用题的比重有所上升。

 

3.实验:

总体来讲,实验设计得很好,质量非常高,且个人认为综合难度低于隔壁班。实验内容为:从0开始,在qemu裸机环境上,设计实现一个简陋的操作系统,有vga&串口输出、时钟中断、shell、内存管理和分配、进程调度功能,颇具趣味性。除了lab1,所有汇编代码都会提供。

尽管实验质量很高,但却缺乏合理的引导:无论是老师上课的讲解,还是实验指导ppt,都过于简略,仅依靠这些,很难弄明白需要做什么、最终的运行结果是怎样的,这导致了实验难度的虚高。这一问题的应对方法有:问助教;观看疫情学期网课的实验讲解视频(相对详细,且能看到运行结果)。希望以后这一点能有所改进。

各次实验具体内容简单介绍:

lab1 multiboot启动

lab2 multiboot到OS、汇编到C的衔接;用C(含内嵌汇编)实现VGA和串口输出,并封装为printf函数

lab3 时钟中断,shell

lab4 内存管理和分配

lab5 进程/任务管理,FCFS调度

lab6 进程/任务随时间动态到达;编写更多调度算法(任选两个),对外提供统一的调度器接口

 

4.考试:

今年题型与往年相同,分为填空、名词解释、简答、计算、编程题。

以下是回忆内容,前三大题回忆不全,仅供参考:

(1) 填空题:操作系统定义(汤书内容,第一次ppt有),信号量的类型和作用。

(2) 名词解释:VFS,进程基本状态,RAID1,基本IO控制方式(轮询、中断、DMA、通道)。

需要注意,名词解释不是写出名字就行,比如VFS,仅写出虚拟文件系统是不够的,还需要答出它的含义/作用。

(3) 简答题:FAT和iNode的含义与优缺点。

(4) 计算题:磁盘调度,死锁避免 - 银行家算法(我们班讲了,隔壁班未细讲),从用户态进入内核态的具体过程(为什么这个是计算题?)。

(5) 编程题:信号量编程题。题目提供实际情景,进行模型判断(本次为生产者-消费者),然后写出代码。

需要注意,本题重点考察的是信号量的运用,是进程同步部分的知识。代码可以写伪代码;定义信号量时,一定要记得初始化;不要忘记互斥信号量mutex;不要写成串行、死锁。

 

5.给分:

学期初给的公式是:15%小测+35%实验+50%期末。最后应该没有严格按照这个比例,一些卷面70左右的同学,调到了88、89,有可能是提高了平时分比例,也有可能是给总评上直接加了分(签到全满奖励分?)。许多卷面不及格的同学,也被捞了。给分还算不错。

19级计科一直流传着cxl20年挂科率32%的传说。据老师自己解释,是网课学期,很多人都在摸鱼,平时成绩接近于零,即使想要调分,也调不上去。今年21年,似乎就没有发生这种事。所以选到此班的同学,不必太害怕。

3 1 复制链接
boj内容好丰富,赞

立即登录,说说你的看法

立華奏 2022春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:很多
  • 难度:中等
  • 作业:中等
  • 给分:一般
  • 收获:很多

讲课上,老师用的英文PPT,用中文讲授,总体上感觉PPT还是很详尽的,基本上涵盖了《Operating System Concepts》那本书讲授章节(1-13)的全部知识点,拿来看一遍复习完全够用了,不过英文PPT确实有些地方稍微有点难懂。老师身体不太好,不过十分负责,也是尽量想讲的更生动一些,可惜文科课大家确实听的兴趣一般般,基本上教室内集中在后排。老师语速我个人感觉有点慢,有时候回放1.5倍速听感觉更合适些(

作业基本上就是概念默写或者调度算法自己分析一下之类的,本来貌似是小测但是两个时间段都有人来不了就改成了作业,作业总体不难,必须手写拍照上传到BB系统上,感觉助教能多提醒一下提交ddl就更好了,我就不幸忘记交了一次(捂脸

重中之重就是试验了:Lab1基本环境搭建;Lab2VGA、UART串口输出;Lab3时钟中断,shell功能简单实现;Lab4内存分配和管理;Lab5&Lab6进程调度算法实现。总体设计相当不错,基本上就是不断完善一个简单操作系统的功能,层层递进,写起来很有成就感。实验还是有一定难度的,也问过好几次助教问题,实验文档和实验讲解稍微有一点不太完善,感觉有些要写的地方并没有叙述很详细清楚,一开始会感觉无从下手。通过实验也学了比较多的东西,包括一些shell命令、写简单脚本、简单的汇编命令等等。实验是写实验报告,最后提交报告+代码,实验报告要求的东西还蛮多的。

考试基本上就是背书大赛+默写大会,没啥好说的,背好1200页PPT基本就行,但是文科考试的确很无聊。注意一些细节,会考概念题,我们这次考了硬链接软链接,背的时候觉得不太可能考就没背,考试直接傻眼;还有一些简单的编程题(也就是进程同步、死锁那块,CS问题、哲学家就餐问题一类)、计算题等等,总体难度不大,但是要背的实在是太多了。。。

最后公布了卷面成绩,感觉给分海星(?)

(最后修改于 1 4 复制链接
delaynomore卷神太强啦
立華奏回复 @delaynomore: 爪巴
Rengin卷神太强啦
立華奏回复 @Rengin: cbddl

立即登录,说说你的看法

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

上课用的英文ppt,老师用中午讲,ppt很不错,对着自学也没有任何问题。

实验相比其他班,较为简单,而且收获不少。

总评成绩按开学约定的比例给分,并且向上调分(我上调了好多分)。

考试前,一定一定要把课本+ppt的东西背一遍,答案都在其中

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

老师本人非常友好,甚至有点可爱。

上课中规中矩,考试的形式有点像文科,不过复习倒是很方便,考前画好重点,一通背记就能考个不错的成绩。总评应该捞了不少人,反正感谢老师捞我。

通常情况下,没有作业,而是用课堂小测代替。

今年实验和去年基本一样,在qemu上从零开始编写简单操作系统。文档比较简略,对我这种人来说,需要参考很多其它的资料才能写好。

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

实验对于我这个物院的来说还是相当有难度的,一开始被实验整得有些懵,不知道从何入手。需要自己静下心来慢慢理清思路,慢慢写,独立完成还是能学到不少东西的。 关于考试,因为是两个班一起出题,可能会出现一些没讲过的东西(?也可能是我忘了),也会考一些非常细的概念,不过大致上看看ppt应该就没什么问题。 给分还是不错的,实验按时完成,考试感觉一般,没想到最后给了4.3

1 1 复制链接
Misaki题目不是lyk出的...

立即登录,说说你的看法

peining 2016春
  • 课程难度:困难
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:困难
  • 作业:中等
  • 给分:一般
  • 收获:一般

其实老师讲课还是可以的,比起组成原理来说还有趣一点,最后考试不简单,但是给分还行。实验很不容易,老师人性化得分为第一批和第二批提交。于是我就都第二批低分飘过保平安了,主要是一开始的框架也没会,后面就一直懵逼,课程设置有一些问题吧,这也没办法。

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

上课和马建辉风格差不多,实验如果要自己写的话完全只能自己摸索,费时而且不一定做的出来,考试闭卷,和文科考试似的。

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

实验花的时间很多,而且老师给的实验说明不是很详细,需要自学汇编,而且代码有很多细节自己要摸索出来的话,需要疯狂的查资料,还是有些坑的(比如原理都懂了,但就是AS汇编器的某个用法自己不清楚,导致结果一直不对。网上的资料相对零碎,找来找去还是挺费时间),我觉得有些地方应该直接让我们看源代码。

(推荐一本书:Orange's 一个操作系统的实现)。

个人的感受是做实验过程中自己查维基百科、stackoverflow学的东西比听讲学到的多太多。。。

 

考完试更新:

考试前会划重点。好好记。(我当时带了电脑,飞快地记到了onenote里面。)

考试方式偏文科,偏应试,个人认为不利于学好CS,但利于备考。比如这次还出了这种题:“当今OS的发展动力是什么?”。真没想到会这么考。。

考前几天好好看PPT,有些东西最好记(OS有哪几个基本类型,顺序执行的特点,进程的五大特征等,要能自己列全。这是我觉得很死板的地方,我认为这些只需理解了就行了),小概念也不要放过(比如什么是“护航效应”,估计没彻底看PPT的人都不记得了。类似的还有优先级反转之类的名词,弄懂即可,只是这次没考。反正CPU调度这章肯定是重点了)。可以自己做一个PPT,每一页写一些概念,把解答部分做成单击时进入的动画,放映一遍看自己记不记得。

实验要好好做,实验后附的问题也要当时弄明白。(比如可执行程序中的BSS段是干什么的,做实验的时候就应该多查wikipedia)

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

深夜点评怎么可以写这么多错别字,靠,更新一下


实验相对隔壁班来说简单,但是最后几次没有框架的实验还是有不少理解的难度,但是根据git上开源的仓库,还是可以较为轻松的完成实验,具体的实验内容别人已经说的很清楚了。

期末考试好像隔壁班有直接复现试卷的,大家可以去看别人复现的试卷。考试难度比较适中,我最后满打满算没有看到一天时间,期末73,实验全满,有少量加分,作业平均每次八点几,最后总评88

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

老师人很好,讲得很清楚,就是容易听着走神(真的有点容易)。课下问的问题都会很热心回答(不管什么课的,甚至是不会的也会帮忙search或提供一下想法)。

实验设计的思路很不错,从0开始写个OS。只是总感觉文档容易看不懂要干什么,导致实验难度虚高(前两次实验看得我非常畏难,好不容易搞明白了发现难度完全没了)。

实验框架也比较纯c的样子,后面文件太多看着有点眼花缭乱。或许可以用class使结构更清晰一点?

最后一次实验今年是不给框架自行发挥的,因为文件数目太多+无框架+考试周来临,狠狠emo住了。希望前面节奏能快点。shell实验和malloc实验都属于工作量很小了,不明白为什么拖了这么久,考试周才来弄无框架。

可惜这门课还是开得太像文科了点。

虽然没有特别优秀,但总体来说是体验不错的一门课了。

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

上课:中规中矩?本人上课基本不听课,全靠ppt异步学习,上课ppt为全英文,较为凝练,有些地方表述有点奇怪?但基本包含所有精华点,比隔壁祭祖萝莉小希的ppt好不少。本学期把所有课堂小测改为了作业,上完一章/两章就布置一次,基本就算看几遍ppt照抄就可以(作业要求全手写),然后bb上提交,

点名:学期我知道的总共点了3次,前两次分别是点前一半人和后一半人,最后一次全点一遍,我缺了一次课

实验:实验主要是教你从0搭建一个简单的OS,带shell,内存分配,任务调度分配等。拆成6次实验(实际算是5次实验,实验5和实验6都是任务调度相关,但后者要求抢占式调度,任务动态到达等,完成了实验6的话实验5自动满分),允许一次无条件迟交一周(不影响总评)和助教打声招呼即可。

实验的体验较差:1.实验讲解ppt过于精简,仅告诉你几处实验关键点,但前后逻辑,实验目的等等有时会较为模糊,这就导致你需要花费大量的(不必要的)时间仅仅只是为了搞清楚实验到底想表达什么,但很好的一点是助教每周6都会有实验答疑,给你解释并告诉你一些思路之类的(虽然我没去过,有去过的同学可以讲讲),能帮你节约很多时间。搞清楚实验目的后就会发现实验其实难度不大。

2.实验报告要求较多,非常繁琐(需要结构图,流程图,编译图之类的),而且没有任何意义(我认为给助教和学生都带来了很多麻烦,建议以后报告展示结果,讲述关键思路即可,个人认为甚至应该限定报告字数,超字数扣分,报告应该是用最凝练的语言把最关键的思路清楚地表述出来,而不是把简单的逻辑点用一大堆抽象废话包装起来,不仅折磨别人也折磨自己)

3.实验收获较低,实验本质就是C语言实现一些简单的逻辑,写出来的东西较为鸡肋(较为玩具?)

课堂和实验收获:较低,感觉实验和课堂基本没有收获什么新知识??至少我学了这门课依然对线程进程操作系统的实操没有任何概念,基本就是作业抄抄书ppt,

考试:背书背书背书,自己的复习经历:先花一天过一遍ppt,把关键知识点名词用typora敲下来,然后花一天半背个滚瓜烂熟,考试基本没问题了,最后卷面87,总评还没出,所以给分暂不评价,只要你肯背书,高分肯定会有,

但感觉这种课文科真的没意思,个人还是希望能学到一些前沿的知识和工具的使用,你能考100不代表你掌握的技能和知识的比考6 70的扎实,不想等到几年以后真正需要用上这些东西才去痛恨当年的自己浮于表面地追求分数,而不是扎扎实实打好基本功,所 以推荐想真正学到点东西或者锻炼自己技能的到隔壁lyk或者xk的班

考试大题考了调度的两种方式(SJF RR),让你解释它是怎么调度的,有何优缺点,然后给到达队列计算调度相关的时间,然后问实时操作系统是否适用,不适用的话要用哪种调度

以及一题生产者-消费者问题,(给了一段代码,是把ppt正确的代码里的互斥锁的位置调换了),问你有什么问题,怎么改,然后第二题问有3种信号量,代码里出现了哪些信号量

还有一个TLB 相关的大题,问你如何降低缺页率,有计算访存时间,TLB的意义??(这个记不大清楚了)

个人觉得OS和COD知识交集很大,建议与COD整合起来复习

 

0 1 复制链接
loginfinite已出分 麻了 被卡94 寄 同学们一定不要翘课

立即登录,说说你的看法

  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:简单
  • 作业:很少
  • 给分:一般
  • 收获:一般

刚刚考完,评论不涉及老师讲课,主要说考试和实验。

 

实验收获还是不少的。说实话实验难度不大。实验最大的难点是搞不懂需求,不知道要做什么。因为老师的PPT给的太过抽象,必须辅以助教的实验文档才能慢慢搞懂,建议刚开始一定要找老师要2020年的线上课实验讲解录屏,不然普通人很难搞懂。实验需求搞懂了,基本实验就完成一半了,我花一个下午才搞懂实验干的啥是常有的事。不懂实现过程的多找助教问问也能有不少收获。

第二个问题是QEMU上我没找到调试方法,导致出现BUG很难找,这个只能提高自己编程的一次性通过率了。在实验开始的时候写几个调试用的函数打印状态信息是磨刀不误砍柴工的。(提醒下注意检查符号数无符号溢出的错误,有个实验因为这个BUG查了一下午...)

实验4的助教给的测试用例很有意思。实验5、6不再提供框架,感觉写出来有那么点意思了。

实验安排的时间我觉得有点问题,建议同学和老师反映早点开始实验,不然后面很紧张。5月初安排实验4,5.20 左右验收实验4,6.17就要考试,且提交实验5,6,是有点难顶的。

 

考试部分今年没有出什么太离谱的题。看OS的出题风格就是总会给几个恶心人的填空让你难受难受,比如进程的特点,操作系统的作用啥的,躲不过。今年考的比较意外的是硬链接和软链接,班上讲的和书上讲的都不太清楚.....CSDN里翻吧,据说已经连续考了好几年了;此外还出了程序员应不应该学OS?请从内存分页管理角度解释理由,我特喵??我除了程序局部性原理的角度外就没想着其他答案了。我信院来蹭的,如果不是为了拿学分不建议选课,期末复习1200页讲义难顶。而且复习背八股文没啥收获...

 

学习基本可以靠教材+老师PPT互相补充,难度不大

(最后修改于 0 2 复制链接
loginfinite我是用Clion上的Remote Debugger,gdb调试,可以像其他普通的程序一样断点看变量什么的(虽然现在说已经晚了,以后选课的同学可以注意一下
silence隔壁班助教提供了一个链接:https://zhuanlan.zhihu.com/p/105069730

立即登录,说说你的看法

*_* 2016春
  • 课程难度:困难
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:困难
  • 作业:中等
  • 给分:一般
  • 收获:一般

助教的实验文档写的和shit一样,不建议学。

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

老师其实蛮和蔼的,没上课的时候和同学唠唠嗑儿,偶尔感觉迷迷糊糊的

上课:可能有时候语速比较快,我上课的时候经常走神hhh。由于放假导致上课时间不够,最后文件系统那里的确讲的飞起,让我直接放弃了。PPT总结的很到位,基本上涵盖了恐龙书的关键内容,还有按照模块的总结。不过看起来没有隔壁班的那么生动,作为复习材料比较方便。不定期点名,占平时分。(但是到课率仍然很堪忧)

作业:平时基本没有作业,用两周一小测的形式代替,个人觉得挺好的,可以督促复习,不至于在考前狂看1000页英文PPT。小测也很简单,甚至可以直接在PPT里搜。最后两次的小测变成计算题了,作为作业布置。

实验:从0开始完成一个自己的操作系统,一共有六个lab,写下来很有成就感,也对理论课的理解加深了很多。画风和隔壁班不太一样,个人感觉是自由发挥,能跑就行(?)。虽然实验ddl最后拖到了考试结束之后很久,但是我觉得比隔壁班放在考试周前好一点。平时的实验给的时间也挺充足的。不过上课讲的实验经常很草率,看去年的回放也经常不知道要干什么,也没有详细的实验文档,需要自己多问问助教和老师。难度适中,主要就是锻炼基本的写代码的能力,比较难的地方(比如汇编)在PPT里都会给,Makefile什么的也不会真的要你自己写。

其他:这里疯狂表白胡助教!胡助教有问必答,回复速度很快,人也超和蔼,头像也很可爱

至于给分,基本上按照公式再加几分。虽然被卡了,但也还能接受。不过OS课的给分好像一直不会大力调……

总而言之,好好做实验,认真学肯定不会太差啦

 

0 0 复制链接
  • 课程难度:困难
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:困难
  • 作业:很少
  • 给分:一般
  • 收获:一般

老师人很好,讲课也不错。实验共六次,感觉比另一个班简单(虽然每个实验我都要做很久,最后两个还没有做完)。我总评2.0,对于只求不挂的我来说还是很好了。

0 0 复制链接
XXXXX 2021春
  • 课程难度:困难
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:困难
  • 作业:很少
  • 给分:一般
  • 收获:一般

开学时被去年32%挂科率吓到了,实际上做完实验分不会太低,会略微调分

lyk和cxl的实验和理论内容都不太一样,lyk班可能人多一点,选不到的话cxl班也不是不可以接受

不过今年cxl实验讲解比去年简略了很多,要看去年视频才能做,不排除有继续加大实验难度的可能

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

实验很难,主要是前面的使用linux内核,后面好一点,实验能全部完成的同学仅占1/3... 由于上一点,我觉得我才拿3.7有点不太能接受,因为卷面最高听说69(至少我查卷时是),我也是60+,实验全做了,可能没调分吧(?) 总体还好,就是实验难了,今年又是线上,难度更高,线下也许好点,只要多问助教就行 吐槽一下,不管陈老师监什么考试,考试后半小时都说不去解手,怕交卷后通答案...

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

实验很难,要有心理准备;考试像文科考试,要注意复习一些边边角角的东西,比如这次考试第一题就是考操作系统的四个特征。不过最后给总评的时候会根据你的情况调整考试和实验的比重,所以给分看起来还是不错的。

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

没有作业 两周一小测 两次点名

四个实验难度很大我只做了1.5个实验后面直接放弃了省下不少时间

上课讲的很困 慢慢就到后排做自己的事了

期末不难 好好背ppt就行 于是就变成了文科

最后一节课会划重点一定要去

总评的话 像老师说的实验不好就抓期末 期末不好就把实验补齐

考试觉得挺好就没补实验了最后3.3hhh

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

成绩出来了写个评价~

这次上操作系统没有作业,两周一次小测代替作业分。

(虽然小测的题目很简单,但是对于不喜欢及时复习的我,还是感觉拿不到满分)

然后实验挺难的,难在给的提示太少,需要自己一个人把所有的东西构思好,然后慢慢debug,慢慢跑通。

尤其是刚到lab2就要完全自己实现,只提供测试文件和接口说明,没有更多的提示。当时看到实验完全是懵逼状态,按照自己的思路做,但是由于makefile和gdb都是第一次接触,学习它们都耽误了一点时间,加之自己开始写实验也很晚,所以实验二就没能按时交上去,选择的是分析老师代码的替代方案。

不过当你理清楚整个代码的结构之后,再写实验三和实验四就比较容易了(虽然我实验三最后一个功能实现的并不好),而且你会发现,这种不限制你如何实现,只规定你实现哪些功能的模式其实有更高的自由度,因为你可以想怎么实现就怎么实现,不像隔壁班根据实现方式来打分。

这次因为实验安排不太好,只做了四次实验,所以每次实验的比重就加大不少(我哭)

 

这里强调一下,一定要多问助教和老师!!!我们这个学期的助教不太喜欢回人,所以我做实验的前期完全是自己瞎琢磨,后来我跟室友学着问老师,老师回话速度还是很快的,一两句话就解决我的疑惑,做实验就非常happy啦~

 

然后其他的就没啥好说的了,cxl上课感觉没有llxx讲的清楚,也可能是因为我自己听课有时候跟不上她。

最后的考试还是很简单的,全都是很基础的概念,连我考前最担心的信号量也就考了个很简单的PC问题。

 

不过……我宁愿要93都不想要94啊,又被卡绩了好难过……

 

//Update 2019/12/19

上传小测题  习题.rar

0 5 复制链接
TheLitFireorz wjw
yz01回复 @TheLitFire: wjwtql(让我确定一下你没有把我当成wjw)
TheLitFire回复 @yz01: ?你不是wjw么【/滑稽】
yz01回复 @TheLitFire: wjw是真大佬,我是wjw的室友(
TheLitFire回复 @yz01: tql,您和wjw一样94,wsl

立即登录,说说你的看法

OdileCooper 2019春
  • 课程难度:中等
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:中等
  • 作业:很少
  • 给分:一般
  • 收获:一般

实验对学渣极其不友好!这一年实验难度突飞猛进,一共四个实验,lab2是往年的lab5(大概),导致全班只有两三个人做出来,其他人都做了替代方案(给代码加注释);后面两个实验都基于lab2的代码,如果前面没弄清楚(比如我这样的学渣),后面很难做,并且还没有替代实验,认识几个同学都放弃了。考试难度正常,和COD一样背背书,有一大题考了命令行。

四个实验:

lab1照着PPT做就行,事实上因为PPT版本过于老旧,实际上跑起来BUG非常多,靠着上网搜解决方法做完的。

lab2写一个FCFS的进程调度系统。

lab3分难度,大概就是写RR/优先级调度或者混合起来。

lab4相当于用隐链表写malloc

0 0 复制链接
随风流年 2017春
  • 课程难度:困难
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:困难
  • 作业:中等
  • 给分:一般
  • 收获:一般

老师人不错,而且很明显能看出来是想让我们学到很多有用的东西的。所以PPT做的还不错,上课画风有点类似文科课,有很多要记录的知识点。

今年的实验课讲真个人感觉不是很友好,也可能是我太菜了,平常的实验一个人基本没有单独做出来的,都是根据助教给的代码写的第二批,再加上最后的大实验直接放弃,所以就导致这门课是我单学期最差的一门课......

总体评价,老师不错,也挺负责,PPT还好。就是实验难度太大了,实验一定要好好做,实验做得好跟做的不好总评可以差个5-10分。。。

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

讲义做的不错,期末前要多看几遍,很有帮助。

实验今年改革了,有点难度。每次实验都要交,否则至少会差一档

期末有点像文科,都看看书和讲义吧,期末考的好的,总评会调的比较高。我期末考了前三,实验都交了,作业平均8分吧,最后总评98.

 

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

今年陈香兰老师将之前的一门因为选课人数不够被砍掉了的linux的暑期课程的实验搬到这个课里面来了,所以今年实验跟以前很不一样。实验最开始是用汇编写的,后面基本主要是c,设计汇编的也都给了代码。实验上交时间分为两个批次,分数设置楼下说过了,其实我也不太记得了/笑。实验好好做的话最后分数还是不错的,尤其是最后一个选做的实验,占总分10分,而且实验给分也还好,最后一个实验是时间片轮转调度算法,我只写出了时钟还没有实现调度就给了8分。考试占比好像是50%,考试简直是文科考试,建议课件什么的早点开始看。据说最后卷面分数超过60的都很少/捂脸。但是最后都调分了。

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

我是2017春的,不知道为什么没这个选项......

 

这学期老师把她暑期的一个linux课的实验放到操作系统课里了,所以实验和以往的不一样。我的体会是实验基本全靠谷歌(和Orange's那本书,下面有人提到),做到实验五的时候我发现了南大的操作系统主页……感觉和我们做的基本一样(所以说实验设计得其实还是比较合理?)但是南大的实验指引比我们要详细很多(然而那个时候我们已经脱离汇编进入C了……),链接在这里:

http://dislab.nju.edu.cn/taohuang/lab1.html

(不保证永久有效)

 

关于考试: 非常赞同楼下文科的说法以及ppt的确比llxx好…平时分包括三次小测(其实就是点名)以及作业(作业改得比较松,做错了一般也是9分)

 

这学期的实验分了两批交,第一批满分10分,自己写;第二批满分8分,任务是给助教发的代码加备注。 但是工作量差很多……

 

感觉我们这学期多做的实验中有些东西其实在微机原理里会学到,所以还是有用处的(吧)

 

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

比llxx强点,ppt有个主线,其他懒的评价

出了分再来说几句,虽然一学期下来课程真的无力吐槽,但给分倒也不含糊,助教很nice,最后选做的大实验真的就是划水般写了几句话而已,敲了几行代码,还给了不错的分数,老师在群里说“今年不及格人数很多”,当时把我们都吓坏了,但分数出来后,群里大部分人都表示超出预期,所以估计往年给分会更好吧

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

课程主页http://home.ustc.edu.cn/~lijun814/ 平时作业和实验都在里面啦

个人感觉难度适中,老师讲得挺好的,外院的同学选修问题不大,H班的童鞋可以考虑退一个学期英才班来非H班玩呀23333 作业一般,实验难度合理,这门课学下来还是蛮有收获的~

最后考试难度不大,而且是中英文都有,用英文课本也不虚,给分很好。

0 1 复制链接
长者主页打不开。。

立即登录,说说你的看法

runday 2015春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:中等
  • 作业:中等
  • 给分:一般
  • 收获:一般

有实验,挺水的,考试要记的东西挺多的,最后成绩81

0 0 复制链接

陈香兰

教师主页: 戳这里

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

李永坤 9.2 (29) 2023春 2021春...
李永坤, 吴思 8.9 (9) 2022春
未知 2017春 2009秋...
熊焰 2013春 2010秋...

陈香兰老师的其他课

Linux内核源代码导读 10.0 (1) 2011秋 2011春...
数据库系统及应用 9.0 (2) 2022春
分布式计算 2016春 2015春
操作系统 2013秋
软件综合实验 2016夏 2015夏
软件综合实验(废) 2016夏 2015夏