我需要什么硬件才能开始编写、编译和 运行 我自己的内核?我是否需要购买 raspberry pi 之类的新机器?

What hardware do I need to start writing, compiling and running my own kernal? Do I need to buy a new machine like a raspberry pi?

我是一名学生,希望了解操作系统的工作原理。在做了一些研究之后,我决定尝试用 C 或 C++ 编写自己的内核。

我也很可能会跟随 The Linux Kernel Module Programming Guide - by Peter Jay Salzman, Michael Burian and Ori Pomerantz.(让我知道是否有更好的资源我应该看。)

我可以使用我自己的个人 windows 电脑和大学里的一台 ubuntu 机器,我都不能冒损坏的风险。

我有一个长期项目的想法,即制作一个带有 raspberry pi 的虚拟航天器,并为其编写所有代码。这个内核将是它的第一部分。

我查看了 Linux From Scratch,但这似乎更像是安装您自己的其他人编写的程序组合,我对此不感兴趣。我想做的是编写自己的线程调度程序/内存管理器等,并处理由此引起的所有麻烦。 (不过,我可能希望稍后让我的内核与 LFS 一起工作。)

我的问题:

基本上,我希望了解的是,在开始编写、编译和 运行ning 我自己的内核时,我至少需要多少硬件才能开始?我是否需要像 raspberry pi 那样购买一台新的专用机器,或者我可以在自己的笔记本电脑上编写/编译/运行 它吗?

非常感谢。

您可以使用 QEmu、Bochs 或 VirtualBox 等虚拟机 运行 并调试您的内核,而不必冒毁坏您的计算机的风险。您需要编译的是任何标准 c/c++ 编译器和汇编器。

另外,我建议你看看 OSDev wiki website,那里有很多有用的信息。

请记住,自己编写 OS 可能是有史以来最大的挑战,因此请确保您拥有所需的所有工具和知识。我之所以这么说是因为我试图推出自己的 OS,但我不得不放弃它并使用无法正常工作的键盘驱动程序...

无论如何,作为语言,我建议使用 C++ 而不是 C,因为 类 是编程中非常有用的工具。