可重定位可执行文件的用途是什么,它是如何生成的以及如何使用它?
进程内存映射重映射是什么意思?
如果有人可以向我解释嵌入式系统,它会很棒
提前谢谢 -Das答案 0 :(得分:2)
嵌入式系统可重定位映像需要的关键思想是:
jmp
操作码可以是:
E9
,即jmp rel32
或EA
,即jmp ptr32
。您必须以这种方式编码的原因与嵌入式系统特别相关。相比之下,对于嵌入式系统,操作系统有一个图像加载器,它将可执行文件放在内存中并准备执行。图像加载器执行的部分准备工作涉及根据可执行文件在内存中的重定位来重写任何绝对地址。正是这种操作系统工具在可执行映像中产生了“重定位表”。如果没有操作系统工具来解析和操作这些表,则不会发生重定位。
在嵌入式系统设置中,通常的方法不是实现重新映射绝对地址的操作系统工具,而是完全避免使用绝对地址。
答案 1 :(得分:1)