使用Minix 2或3学习操作系统开发?

时间:2011-05-21 20:50:18

标签: operating-system minix

今年春天,我参加了一个关于通用操作系统理论和原理的课程,现在我想花一个夏天来完成Tanenbaum的操作系统书籍,查看Minix源代码,并大致了解实际的操作系统实现。< / p>

在学校有两位OS教授,我去找他们询问借用Tanenbaum的书。有趣的是,有人说我应该使用本书较旧的第二版,并专注于Minix 2,因为它总体上更简单,并且理解的资源更少(因此在没有信息过载的情况下更容易学习)。另一位教授说她不认为这会是一个问题,我应该选择Minix 3和他的书的最新版本,以便我看到更现代的实现。

Stack Overflow的想法是什么?这里的任何人都有这两个版本的Minix的经验吗?我想学习制作实际操作系统的原则,但我也不希望大量的信息过载会让我无法真正理解整个代码的内容。

3 个答案:

答案 0 :(得分:4)

如果你想深入研究基于微内核的操作系统的来源,我建议你看一下HelenOS,这是一个较新但却相对简单的操作系统,没有UNIX语义和API。唉,目前还没有关于它的书(如Tanenbaum),但来源已有详细记载。

答案 1 :(得分:4)

我采用了Minix 2方式。这对于Minix 3来说是可以理解和铺平道路的。

关于HelenOS - 他们采取不切实际的目标 - 无错误和正式描述。两者都无法实现。

HTH

答案 2 :(得分:1)

有趣的是,我只是碰到了这篇旧帖子,对于看起来很糟糕的事情感到抱歉。

当我在大学时,不久前,我们有一个操作系统实验室,我们使用PC和Linux进行开发,以及68000基于机器的测试我认为它们是基于VMS的测试。

软件环境是Modula2(第一年和第二年语言)或C / C ++(第二年和第三年语言),所有内容都经过交叉编译并通过脚本加载,以便重置测试机器以启动新操作系统。

无论如何,我们使用了某种教育框架来使用Minix2源代码,因此您可以为项目编写部分操作系统,而无需编写全部内容。

我一直在努力寻找这个环境的官方来源和文档,我相信它已经在某个地方上网并可能更新/维护。