首页 理论教育 COFF文件中的段组织结构详解

COFF文件中的段组织结构详解

时间:2023-06-20 理论教育 版权反馈
【摘要】:一个目标文件中的每个段都是分开的且各不相同。在COFF目标文件中都包含了汇编程序中以下3种形式的段:1).text段(文本段)。已初始化段,由汇编器伪指令建立的自定义段。链接器的任务是分配存储单元,将目标文件中的段重新定位到目标系统的存储器中,这一过程称为定位或分配。图5-2 目标文件中的段与目标存储器之间的关系图5-2 目标文件中的段与目标存储器之间的关系

COFF文件中的段组织结构详解

段是存储器中占据相邻空间的代码或数据块。一个目标文件中的每个段都是分开的且各不相同。在COFF目标文件中都包含了汇编程序中以下3种形式的段:

1).text段(文本段)。它通常包含可执行代码。

2).data段(数据段)。它通常包含初始化数据。

3).bss段(保留空间段)。它通常为未初始化变量保留存储空间。

此外,还有命名段(named sections)。

按照段内数据是否被初始化,这些段可以分为两大类:初始化段(initialized sections)和未初始化段(uninitialized sections)。

初始化段中包含有数据或程序代码,主要有:

1).text段。已初始化段。

2).data段。初始化段。(www.xing528.com)

3).sect段。已初始化段,由汇编器伪指令建立的自定义段。

未初始化段在存储空间中为未初始化数据保留存储空间,包括:

1).bss段。未初始化段。

2).usect段。未初始化段,由汇编命令建立的命名段(自定义段)。

在编译过程中,汇编器和链接器可以将数据和代码各个部分与段对应,并将其分配/定位到存储空间。一般说来,汇编器的任务是在汇编过程中,根据汇编命令用适当的段将各部分程序代码和数据连在一起,构成目标文件。链接器的任务是分配存储单元,将目标文件中的段重新定位到目标系统的存储器中,这一过程称为定位或分配。

目标文件中的段与目标存储器之间的关系如图5-2所示。

978-7-111-35536-6-Chapter05-27.jpg

图5-2 目标文件中的段与目标存储器之间的关系

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈