程序从源码编译为目标代码的时候,这个目标文件的格式是怎么样的?

 

ELF目标文件有代码段,数据段和BSS段。

 

ELF目标文件的头文件,段表,重定位表,字符串表,符号表,调试表。

 

无论是可执行文件,目标文件或库,它们实际上都是一样基于段的文件或是基于这种文件的集合。

 

程序的源代码经过编译后,按照代码和数据分别存放到相应的段中。编译器(汇编器)还会将一些辅助性的信息,诸如符号,重定位信息等也按照表的方式存放的目标文件中,而通常情况下,一个表往往就是一个段。

 

静态链接的目的是将目标文件组合起来形成一个程序或更大的模块。

转载于:https://www.cnblogs.com/ranwuer/p/6020934.html

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐