Operating system 用于开发操作系统的资源

Operating system 用于开发操作系统的资源,operating-system,osdev,Operating System,Osdev,我计划写一个操作系统,但我对操作系统知之甚少。有什么好的资源或书籍可以让我学习吗?你有什么建议? 这本书是由Tanenbaum写的,他是Minix的主要支持者,Linux就是基于Minix编写的。它为诸如内存管理、文件系统、进程等基本操作系统概念提供了很好的概述。本书中的概念与Minix操作系统的示例密切相关,这是一件好事 我想你应该从这样的事情开始。我们在我就读的大学里用的是安德鲁·坦纳鲍姆的。我强烈推荐它,因为它清楚地解释了您将遇到的许多设计决策中固有的权衡。这本书比Minix的书更“公

我计划写一个操作系统,但我对操作系统知之甚少。有什么好的资源或书籍可以让我学习吗?你有什么建议?

这本书是由Tanenbaum写的,他是Minix的主要支持者,Linux就是基于Minix编写的。它为诸如内存管理、文件系统、进程等基本操作系统概念提供了很好的概述。本书中的概念与Minix操作系统的示例密切相关,这是一件好事


我想你应该从这样的事情开始。

我们在我就读的大学里用的是安德鲁·坦纳鲍姆的。我强烈推荐它,因为它清楚地解释了您将遇到的许多设计决策中固有的权衡。这本书比Minix的书更“公平和平衡”

我还推荐这本书,因为尽管他有偏见,但书中很少有他的偏见。此外,他是一位相当不错的作家,这本书实际上很有趣。

网站信息丰富,如果你也想开始编写自己的操作系统,

是我们在大学里用过的书。这很难看,但里面的信息解释得很好(从基本内存管理,到操作系统如何决定执行什么或如何避免死锁)。相当宽


此站点上的类似线程:


我强烈建议您看一下。它有很多有用的参考资料,还有一堆你可以玩的实验练习(包括自动评分脚本,这样你就不必是麻省理工学院的学生来做这些练习)。

如果我没记错的话,其中包含了很多信息,看起来对这方面很有用。旧版本的Linux从头开始的HOWTO也是如此,但在最近的版本中,它已经被删除了


您还可以在中找到许多有用的信息。

这些书虽然很旧,但非常好:


:系统设计与XINU互联,第二卷

我建议研究嵌入式操作系统并构建嵌入式操作系统。它将处理核心概念,而不需要现代桌面CPU的开销


去年春天,作为最后一个项目,我写了一个多任务嵌入式操作系统,这比你想象的要容易。

理查德·伯吉斯(Richard a.Burgess)开发了你自己的32位操作系统。详细介绍了引导加载程序、设置那些奇怪的内存和进程管理寄存器等。这是1996年的一篇很好的读物,当时我以为我会从头开始尝试编写一个简单的操作系统,但可能已经过时了,只处理前几代奔腾类CPU。

你应该看看MINIX 3。我相信这是一个用不到10000行代码编写的操作系统。借助Tanenbaum的一本书,您可以很好地了解操作系统的工作原理,并了解Minix3的工作原理。您可以直接使用Linux,但我认为这是一项有用的任务,可以帮助您了解构建一个正常工作的操作系统实际上不需要那么多行代码

看一看,这是一款全新的基于微核的操作系统,旨在成为一款完全现代化的操作系统。Disclamer,我是一名贡献者,我正在从头开始研究它的外壳

HelenOS已被移植到ia32/64、SPARC、ARM和更多版本,其设计非常完善,易于阅读。它仍处于初级阶段,但展示了一种可能的设计,它真正利用了微核设计,并解决了微核实现(如IPC)中的许多问题

它还包括自动设置交叉编译所需的适当工具链的脚本。它非常容易构建,在大多数模拟器(即QEMU)或裸机中运行良好

我还将研究L4、Minix3和GNU赫德(基于马赫数),后者是试图利用微内核时设计陷阱的一个例证

如果你想走单一路线,只需学习Linux。


我在大学时使用了操作系统和中间件:支持受控交互。它可能是这方面最好的教科书之一。

除了书籍之外,还有许多学习操作系统开发的网站

从base学习操作系统开发的网站是否在其上?但是封面很漂亮!我喜欢那本书,因为它在我的书架上看起来很漂亮。我真的不记得里面是什么样的。是的,这是经典。它通常被称为恐龙书。事实上,我现在把它放在沙发上和我的朋友在一起。这是一本好书,不过是介绍性的。通常,它是一本本科课本。我一直听说它被称为恐龙书,我也同意它是一本本科课本。我试着点击看看里面,但没有效果:(我只是想指出Linux并不是真正“基于”Linux有一个单片内核,而Minix是基于微内核设计的。我正在阅读这本书(第二版)正如我们所说,这是一本非常详细的大书。这本书和Silberschatz和Galvin的操作系统概念是学习操作系统知识的两本最好的书。只是把它放在那里……但我认为MINIX 1小于10000。MINIX 3要复杂得多,虽然我不知道它有多少行是的。你从零开始编写操作系统到现在有多远?你能推荐一些相关资源吗?谢谢。@Sohaib-不再是了。这个答案已经有12年了。你现在做什么@Paul Nathan?你在从事计算机架构方面的工作吗?