Linker 为什么我的系统ld脚本使用类似“的表达式”;点=点“;?

Linker 为什么我的系统ld脚本使用类似“的表达式”;点=点“;?,linker,ld,linker-scripts,Linker,Ld,Linker Scripts,使用ld-verbose转储系统的链接器脚本时,我注意到它使用: .data1 : { *(.data1) } _e

使用
ld-verbose
转储系统的链接器脚本时,我注意到它使用:

  .data1          : { *(.data1) }                                                                                                                                                                                   
  _edata = .; PROVIDE (edata = .);                                                                                                                                                                                  
  . = .;                                                                                                  
  __bss_start = .;                                                                                        
  .bss            :  

为什么要将当前地址分配给当前地址?

=用作孤立截面放置的屏障

表示“……相反,它假定所有赋值或其他语句都属于前一个输出部分,除非是赋值到的特殊情况。”

链接器选择最佳输出节描述后,将跳过以下非
符号分配。使用
=
,链接器将停止搜索并将孤立部分放置在
的正上方