开始创建简单的可启动C程序

时间:2010-02-03 18:03:12

标签: boot

有人可以指导我创建一个简单的可启动hello world程序的路径/步骤吗?我掌握了C / C ++的基本知识。

我的目标是创建一个非常简单的操作系统。

我希望尽可能多地提供参考和样本的相关链接。

2 个答案:

答案 0 :(得分:7)

请参阅this.这是一个非常基本的引导加载程序的教程。它与C / C ++没什么关系,但是它有一些关于bootloader的基本构建块的非常好的信息。

如果您对构建基块非常好奇,那么教科书中的资源就会更加深入。例如,本教程没有解释为什么引导加载程序必须以55 AA结尾。此外,它相对较窄。

答案 1 :(得分:0)

您希望构建一个静态链接的二进制文件(不涉及ld.so),并通过跳转到其入口点来启动它。入口点通常是.text部分的开头。 Maye在它上面运行objdump --section-headers image 以找出它的地址。

如果您尝试在嵌入式设备上运行,请查看嵌入式操作系统的内核是如何构建和引导的。例如,看看U-Boot是如何开发基于Ångströmchrome的系统的。