首页 > 其他 > 详细

ELF文件之四——使用链接脚本-2个函数-data

时间:2020-02-09 19:57:41      阅读:64      评论:0      收藏:0      [点我收藏+]

main.c

技术分享图片
int test = 1;

int main()
{
    return 0;
}

int add()
{
    return 0;
}
View Code

main.o

反汇编可以看到多了.text节的反汇编,存储的是全局变量的初始化数值

技术分享图片

main.o对比,text段后面多了00 00 00 01,这是data段,文件偏移为0x5c

技术分享图片

节头表的data节,偏移为5c,大小为4

技术分享图片

 symbol table多了test,节头表索引为2,即data节,数值为0(猜测该数值为地址,一会通过elf文件求证)

技术分享图片

 main.elf

data节大小变为4,bss仍然没有

技术分享图片

程序头的项目2的文件大小和内存大小都变为4了。

同时这里多了一个section到segment的映射,有两个segment,推测为RO,RW?第一个包含的section有text,第二个包含的section有data。

技术分享图片

elf文件同时也多了全局变量的初始数值

技术分享图片

test的数值为7000 0000,所以,符号表里的数值为符号的地址。

技术分享图片

 

ELF文件之四——使用链接脚本-2个函数-data

原文:https://www.cnblogs.com/yanhc/p/12288000.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!