Как objdump вычисляет физический адрес (LMA) секций elf? Насколько я могу судить, заголовки разделов elf содержат только виртуальный адрес (VMA) разделов [1].
Обычно VMA и LMA совпадают. Но для секций инициализированных данных (.data) VMA - это место в ОЗУ для переменных, а LMA - это место в ПЗУ, где расположены исходные значения. Crt0 отвечает за копирование начальных значений в ОЗУ перед вызовом main (). Например:
$ objdump -h my.elf
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 0003c3d0 00080000 00080000 00010000 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
5 .data 000008d0 40000000 000d08d4 00060000 2**3
CONTENTS, ALLOC, LOAD, DATA
-Tom