Operating system 学习的最佳教育操作系统?

Operating system 学习的最佳教育操作系统?,operating-system,osdev,Operating System,Osdev,要从头开始编写自己的x86操作系统,最好学习的操作系统是什么?老实说,您可能不应该从x86体系结构开始,甚至不应该从操作系统开始,而应该从8位初学者工具包(如basic)开始。在大学里,我为M68HC11处理器(工具包中的那个)编写了我的第一个(也是唯一一个)汇编操作系统 如果您真的想从头开始构建自己的操作系统,那么前面还有很长的路要走。一下子理解整个操作系统的源代码可能很困难。上面有一些“基本”代码示例可以让您开始学习。在我大学的操作系统课程中,我们使用了操作系统项目并实现了它。我做了C++版

要从头开始编写自己的x86操作系统,最好学习的操作系统是什么?

老实说,您可能不应该从x86体系结构开始,甚至不应该从操作系统开始,而应该从8位初学者工具包(如basic)开始。在大学里,我为M68HC11处理器(工具包中的那个)编写了我的第一个(也是唯一一个)汇编操作系统


如果您真的想从头开始构建自己的操作系统,那么前面还有很长的路要走。

一下子理解整个操作系统的源代码可能很困难。上面有一些“基本”代码示例可以让您开始学习。

在我大学的操作系统课程中,我们使用了操作系统项目并实现了它。我做了C++版本,但是我认为也有一个java端口。我记得它非常有趣,学到了很多东西,尽管它需要大量的工作。

我认为它就是为了这个目的而创建的


玩得开心

我不久前读过这篇文章。你可能会觉得很有趣。这家伙当年写MINIX的目的就是为了教授操作系统的概念。因此,这可能是一个很好的简单操作系统来研究


然而,正如Martin和Cory所提到的,这是一个很大的问题。

研究过时的操作系统并没有多大意义,因为它们几乎都是当前的操作系统,因为它们往往寿命较长。看看一些新的想法(尽管基于久经考验的真实想法),比如

这完全取决于您希望操作系统如何运行,如果您想要一个微内核,您可能应该学习Minix 3,或者如果您想要一个单片内核,那么当前的linux内核是一个很好的起点(提示:在arch/x86/boot中,有一些非常有趣的代码)。
然而,我个人认为,你应该通读英特尔和AMD手册,然后在osdev.org论坛和维基上读一读。它们有大量的代码需要学习,通常对新手很有帮助。

我认为阅读许多不同操作系统源代码的最佳方式,肯定是osdev裸体教程、关于操作系统的白皮书S关于目标硬件的研究和文档

我个人推荐看L4KAccaCHIO内核,写在相当不错的C++中,也有多个小项目绝对值得检查,比如JimIX或谱系。
最好还是停留在osdev论坛和wiki上-那里有很多信息已经得到了回答-请参阅和

我刚刚从头开始编写了我的x86内核版本这是我无法描述的经验。你可以在上面的链接中找到有价值的资源。

我只是好奇……你为什么要这么做?编写自己的操作系统,即使是一个非常简单的操作系统,也是了解它们如何工作的一个非常好的方法。我不知道我是否能给你一个你能理解的答案,因为我不太理解你的问题n、 我不明白你为什么不想写一个操作系统。我们一定来自银河系的另一边。我从µC/OS的书中学到了很多东西,它附带了源代码(专有的,但友好的ish许可,就专有许可而言)对于操作系统,这本书给出了如何移植到你选择的CPU的说明。加上很多操作系统理论。我知道我要学什么。我已经在里面了。谢谢你的输入。胡说!我想说的是NachOS-我们在UWaterloo用它来做我们的操作系统类。让我说一下-任何内核空间是小endian,用户空间是大endian的系统都是有点愚蠢。别忘了Tannenbaum的书,书中有理论和实践,也是Minix写作的原因:unlixos.org ulix中更好的ulix是用C语言编写的,Intel x86体系结构的汇编程序ulix已经在纽伦堡(纽伦堡理工学院)的操作系统课程中使用了三次