请求各位arm达人,我现在有一种方法实现对应用程序的代码进行重定位,如果不涉及到全局变量,可以将App程序独立编译成bin拷贝进内存加载.
关于全局变量这块,如果指定为rwpi,那么将生成RWPI段,那么程序对全局变量的访问将以间接的方式来进行.将以sb寄存器来存储base.运行时对sb进行重定位,sb寻址全局变量时以基地址+偏移地址.
问题如下: 假如我申请一个buffer将axf中.text段(相当于RO)拷贝进来,那么接下来将指定rwpi生成的.data段拷贝进来.我查了一些资料,要实现对全局变量的访问,必须在进入app程序前对sb赋一个初值.因为本人不熟悉arm,不知道这个初值为多少?要实现全局变量定位,该如何操作,欢迎大家讨论.如果有能够实现者,可以加我Q私聊,有偿! |