我不明白为什么外部符号等于链接器中定义的 ram 的结尾。
特别是,我在下面的 rtems 代码中看到了这种情况:
外部符号“rdb_start”定义 - start.S - 第 155 -157 行
外部符号“rdb_start”用法 - bspgetworkarea.c - 第 23-41 行
例如,当您在链接器中定义 RAM 大小 0x800000 并将入口地址设为 0x40000000 时,rdb_start 值自动对应于 0x407FFFF0。如果您定义任何其他类似于 rdb_start 的符号并将其设为全局 rdb_start,您会看到相同的结果。它的值自动分配给 407FFFF0。
为什么?