Oracle® Solaris 11.2 链接程序和库指南

退出打印视图

更新时间: 2014 年 7 月
 
 

文件格式

目标文件既参与程序链接,又参与程序执行。为了方便和提高效率,目标文件格式提供了文件内容的平行视图,以反映这些活动的不同需要。下图显示了目标文件的结构。

图 12-1  目标文件格式

image:目标文件格式。

ELF 头位于目标文件的起始位置,其中包含用于说明文件结构的指南


注 -  只有 ELF 头在文件中具有固定位置。由于 ELF 格式的灵活性,不要求头表、节或段具有指定的顺序。但是,此图是 Oracle Solaris OS 中使用的典型布局。

表示 ELF 文件中可以处理的最小不可分割单位。是节的集合。段表示可由 exec(2) 或运行时链接程序映射到内存映像的最小独立单元。

节包含链接视图的批量目标文件信息。此数据包括指令、数据、符号表和重定位信息。本章的第一部分提供了各节的说明。本章的第二部分讨论了文件的各段及程序执行视图。

程序头表(如果存在)指示系统如何创建进程映像。用于生成进程映像、可执行文件和共享目标文件的文件必须具有程序头表。可重定位目标文件无需程序头表。

节头表包含说明文件各节的信息。每节在表中有一个与之对应的项。每一项都指定了节名称和节大小之类的信息。链接编辑过程中使用的文件必须具有节头表。