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

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,所以,符号表里的数值为符号的地址。

 

posted on 2020-02-09 18:17  yanhc  阅读(208)  评论(0编辑  收藏  举报

导航