【发布时间】:2014-08-22 23:41:24
【问题描述】:
我的任务是为嵌入式系统开发一个简单的引导加载程序。我们没有运行任何操作系统或 RTOS,所以我希望它非常简单。
此代码将存储在 ROM 中,处理器将在开机时开始执行。
我的目标是用 ASM 编写第一部分来处理以下操作:
- 初始化处理器
- 将 .data 段从 ROM 复制到 RAM
- 清除 RAM 中的 .bss 段
- 调用main
Main 显然是用 C 编写的,并执行更高级别的操作,如自检等......
现在我真的不知道如何将这两个程序合并为一个程序。我发现了一个糟糕的工具,它基本上使用 objcopy 从可执行文件中收集 .text 和 .data 部分,并在前面附加了一些 asm 但这似乎是一种非常丑陋的方法,我想知道是否有人能指出我的正确方向?
【问题讨论】:
标签: embedded boot bootstrapping