OS
共 1197字,需浏览 3分钟
·
2021-05-20 09:32
有读者问我当年是如何学习操作系统的,这个问题让我想起了很多年前面对操作系统很是迷茫的时光,幸好,最终我还是和它从陌生人成为了亲密好友,这一切,都归功于一位经验丰富的李姓学长向我推荐的经典操作系统入门课程:MIT 6.828。
MIT 6.828(现在最新的版本也叫做 6.S081)是操作系统中最经典的一门课程,完成所有的 lab 就相当于实现了一个迷你的操作系统。最开始我看操作系统的书籍,有很多理论概念只是停留在纸面的理解,想要动手去实现一些小的功能却发现无从下手,发现这门课程的时候感觉就像捡到了宝一样。
这是课程的首页:https://pdos.csail.mit.edu/6.828/2020/schedule.html
这是课程附带的 xv6 lab:https://pdos.csail.mit.edu/6.828/2020/xv6/book-riscv-rev1.pdf
B 站上有相应的视频:https://www.bilibili.com/video/BV19k4y1C7kA?from=search&seid=747757229768034336
这是课程目录,课程是全英文的,不过不用担心,里面涉及的操作系统的概念开始时看着很多,稍微花点时间基本就烂熟于心了,之后就没有任何阅读障碍了,甚至比阅读一般的英文书籍的成本要低很多,毕竟很多词汇重复出现,在这个过程中我们对概念的理解也是逐渐加深的。
来谈谈我为什么推荐这门课程吧~ 这个课程做到了对新手小白非常重要的一点:循序渐进,一步一步的在我们的脑海中建立起较为完整的 OS 框架,从最开始 lab 中的手把手教学,到后面几个 lab 的放飞自由,整个过程的引导是非常到位的。跟着这个课程设计,边学边做,当课程结束的时候,也就收获了一个属于自己完整的内核模型,这过程中所获得的成就感是不可言表的。
当然,要想跟上整个课程,并且按质按量完成所有的 lab,是耗费了不少时间的,但可以保证的是,所带来的的收获在程序员生涯的益处是终身的,虽说工作时很少会细致到涉及操作系统的知识,但操作系统的涉及和实现方式,对于思维的引导和启迪在很多工作中是相同的,这种逻辑的美与共性,任何动手的工作都可以从中受益。
你好,我是公子龙,毕业于中科院,前大型计算机竞赛冠军,现算法工程师,拿过九家大厂的 offer 。
北漂七年,从小白到计算机竞赛冠军,读研时通过实习和比赛收入 50 万,点击蓝字查看我的编程之路。