3

如何开始编写在 arm 架构上运行的操作系统?如果可能的话,我想编写一个引导加载程序和我自己的内核。谁能帮我开始?

4

1 回答 1

6

我首先要熟悉一下已经存在的东西——Linux 是一个好的开始。查看 rPi 上的发行版中使用的引导加载程序 - 例如 Debian Squeeze 中使用的uBootBareBox。另一个选择是 CFE——它在 BSD 许可下并且在调试/早期开发期间很好。

另一件事是查看 ucLinux 和 ucLibC 系统,以及 buildroot 和 OpenWRT——所有这些都旨在将其压缩到一个小型系统中。

当然 - 构建自己的内核 - 你会想要更深入 - 并花时间了解 MMU、进程管理/多任务、中断等。良好的微控制器编程背景、汇编语言和 CPU/SOC 架构知识将是必不可少的。对于 ARM 系列,您会想知道支持的各种指令集,以及哪些芯片具有 MMU、FPU 等功能。

祝你好运——这听起来像是一个有趣的项目。

于 2013-01-21T23:23:33.410 回答