【发布时间】:2019-01-21 10:14:06
【问题描述】:
在嵌入式环境中,我想传达有关特殊部件的信息 从构建过程到程序的内存(起始地址和长度) 装载机。我的想法是让链接器创建一个类似于.bss的输出部分, 即该部分不应占用 elf 文件中的空间并且应具有标志 像.bss 部分。我想到了这个想法,因为我已经在使用定制的 链接器脚本。
在处理 elf 文件时,我的自定义加载器可以识别此部分 通过一个神奇的名称,并使用节大小和 VMA 作为描述 内存的特殊部分。
当我说它应该类似于 .bss 时,我的意思是 objdump -h 的输出
应该是这样的:
Sections:
Idx Name Size VMA LMA File off Algn
...
7 .bss 00000204 10204c9c 10204c9c 00005c40 2**2
ALLOC
...
我想重要的是这里只有标志 ALLOC 存在,而不是 LOAD 或内容。
这可以通过链接描述文件中的一些指令来实现吗? 如果有,这些说明是什么?
【问题讨论】:
标签: linker gnu linker-scripts