elf分段
加载
RISCV程序执行流程
初始化代码
RISCV程序执行前需要一段初始化代码,执行硬件、内存初始化、设置堆栈指针等操作,初始化代码为start.S:
1 | .section .init |
程序接下来会跳转至startROM.S
中的_startFromROM
继续执行,并逐步跳转至main函数,_startFromROM
位于text段内,主要会做一下段拷贝工作,然后跳转至vv_main
中
1 | .section .text |
记录生活
RISCV程序执行前需要一段初始化代码,执行硬件、内存初始化、设置堆栈指针等操作,初始化代码为start.S:
1 | .section .init |
程序接下来会跳转至startROM.S
中的_startFromROM
继续执行,并逐步跳转至main函数,_startFromROM
位于text段内,主要会做一下段拷贝工作,然后跳转至vv_main
中
1 | .section .text |