如何实现操做系统 Step By Step

操做系统是计算机学生的必修课,可是国内的大学开设的《操做系统》时只注重讲理论知识(虽然理论很经典,但课本中的某些篇幅不免有些过期),不多要求学生本身动手完成实验,至少咱们在上操做系统的时候老师没有要求完成很复杂的实验。对于成天想着完成本身操做系统的同窗,若是可以本身亲自动手完成一个完整的操做系统,重走linus本人在大学完成Linux系统的经历,那将是很自豪的事。惋惜国内并无哪所大学的操做系统课程是以 Step By Step 方式鼓励偶们这些计算机同鞋完成本身的操做系统的,哀伤啊。 php

鉴于此,如下选择了国外一些著名大学的操做系统课程,其中大都要求学生在学习操做系统课程时完成一系列基本的实验,最终在课程结束的时候本身能够写出一个小巧,可是功能完善的操做系统(包括内核,文件系统,shell和一些实用程序) html

1、MIT(麻省理工学院)《操做系统工程》 web

    这是我见到的最详细的与有关操做系统原理与实践相关的课程,课程除了基本的原理之外,还留给学生7个实验,分别是: shell

一、Booting a PC svn

二、memory management 学习

三、user environment 测试

四、preemptive multitasking spa

五、file system 操作系统

六、network driver 设计

七、final project

另外,MIT还提供了一个与Unix相相似的极简单的操做系统:VX6 它基于Unix V6,能够利用qemu或bochs启动(偶测试过了,确实能够启动,还附带了一些实用程序,如 ls,mkdir 等)

2、UCLA(加州大学洛杉矶分校)《高级操做系统教程》

也分了几个实验:

 

3、Stanford(斯坦福大学)《高级操做系统的实现》

也提供了三个实验,下面是连接:

 

4、CMU卡内基梅隆《操做系统设计与实现》

没有详细的看,有兴趣的同窗能够本身尝试。

 

5、Minix3(由计算机科学家Andrew S. Tanenbaum 于1987年发明)超小的教学操做系统,据其官方称内核核心代码才6000行左右,(固然还有其余模块代码,正真代码远远不止6000行)。

网上还有不少相似的资源,请点这里这里,还有这里这里,固然,最牛最牛的还要点这里

相关文章
相关标签/搜索