课程链接:jyywiki.cn/OS/2022/
操作系统概述
2023.05.18
-
课程内容总结
1.1 罗里吧嗦的他的自我介绍以及他对学生的期望
1.2 操作系统3W(why、what、how)
-
回顾内容
2.1 Academic Intergrity学术诚信
①不将代码上传到互联网
②主动不参考别人完成的实验代码
③不使用他人的测试样例
学术诚信这个词是我第一次接触,怎么说呢,有一种豁然开朗的感觉,也是第一次切实感受到不同的平台给人带来的区别。至少到看这个课程之前,我都被这个外部环境同化了,不管是周围的同学老师,还是社交媒体,好像都在告诉我程序员都是在不断的cope和debug中度过的。遇到问题先去“问度娘”,好像已经成为了我的习惯。但这是不对的!!!!至少对于作为学生的我而言,这是不对的。如果一味靠外界信息去应付式完成学业,那活该毕业就失业……尽管虽然,这真的很难,但我们仍然应该尝试。
2.2 操作系统3W(why、what、how)
2.2.1 Why learn OS ?
说实话,最开始学操作系统是因为在学校老师的课听了跟没听一样,为了期末绩点所以我想找网上课程自学;后来,是因为它是计算机领域的水电煤,为了就业面试时答得出来,为了赚钱,赚更多的钱,所以我想好好学;再后来,看了《费曼学习法》,它说学习目标应该是非功利性的,并着眼当下的……我突然就开始挖掘why的另外一个原因,或许我会喜欢上操作系统?又或许我会因为听不懂老师的课而好胜心突起去学?好吧这也是费曼的一个雷点,目标也不该是偏执的。其实我为什么学习操作系统我自己还不清楚,但可以肯定的是,我一定是希望自己变强变好的。好的这一part先这样,如果后面我想出来了,我应该会有挺多话想补充的。
然后就是关于老师说的学习操作系统能干什么。他说能给我们有关“编程”的全部,我保持质疑态度,我认为我是那个悟性较差的。但没关系,他说就算悟性差,也能让我内力大增。我信了。
2.2.2 What is the OS ?
课程中,老师通过讲述操作系统的历史去说明操作系统是什么,我认为这是一种很有效的教学方法。至少通过他的讲述,我终于知道操作系统到底是啥了。再说一次,我们学校的老师真的不行……
好的进入正题。
操作系统是管理软、硬件,为程序提供服务的。概念边缘很模糊。ok概念式教学一无是处。我们可以学习费曼:提问题!
操作系统是怎么从0到现状的?????
1940s:出现了第一个系统,ENIAC。当时的ENIAC其实就是一个状态机,干的事情就是做一些当时只能由人脑去干的事情,比如复杂的计算,例如微积分。后来出现了电子计算机,输入输出都是用打孔或者拉长纸带实现的。(当时是没有操作系统的,只是用指令控制硬件)
1950s:更快更小的逻辑门(晶体管)、更大的内存(磁芯)、丰富的I/O设备。主要是因为人们的需求变多变复杂,所以需要执行更复杂的任务。这个时候的操作系统也是打孔,是用一张表,然后按照手册在表上对应的位置打孔去实现一个语句。而且因为这个时期,计算机很贵,量少需求大,也就是说,多用户排队共享计算机。毋庸置疑,这肯定会很慢。此时,操作系统的概念才开始形成:操作(operate)任务(job)的系统(system)。
1960s:硬件都升级了,特别是内存。可以同时载入多个程序而不用“换卡”了。并且此时,图像化界面出现了。并且此时实现中断机制,实现共享CPU。简单来说,就是当系统中有两个进程排队等待运行,当a进程用完cpu去执行I/O时,就可以把cpu让给b进程。那么就需要有管理这些进程的API。后来,出现了时钟中断机制。简而言之就是干一半停下来让别人干,然后等会再接着干。同时在60年代,诞生了现代操作系统MIT。
1970s:此时操作系统已经很成熟了,基本上与现在我们用的操作系统的功能没什么太大区别。并且,个人计算机和个人开发者走上历史舞台。
……一些细节的东西,但总体来说,我们从操作系统的发展历史了解到了操作系统到底是什么,它用来干什么。
2.2.3 How to learn OS?
好吧道理都懂……
写代码=创造有趣的东西
总结来说就是:别怕!!!!多动手!!用对工具,用好工具!!!最后,基础很重要!!!!
作者:ee在努力
链接:https://juejin.cn/post/7235426780697051191
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。