ओबीजेडम्प एल्फ अनुभागों के भौतिक पते (एलएमए) की गणना कैसे करता है? जहां तक मैं कह सकता हूं, एएलएफ सेक्शन हेडर में केवल अनुभागों का वर्चुअल एड्रेस (वीएमए) होता है [1]।एल्फ़ फाइलों में सेक्शन के आभासी और भौतिक पते
आमतौर पर, वीएमए और एलएमए समान होते हैं। लेकिन आरंभिक डेटा खंड (.डेटा) के लिए, वीएमए चर के रैम स्थान है और एलएमए रोम स्थान है जहां प्रारंभिक मान स्थित हैं। मुख्य() को कॉल करने से पहले प्रारंभिक मानों को रैम में कॉपी करने के लिए सीआरटी 0 जिम्मेदार है। उदाहरण के लिए:
$ 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
टॉम
[1] http://www.ouah.org/RevEng/x430.htm
मुझे इस विषय के बारे में कोई जानकारी नहीं है लेकिन ऐसा लगता है कि एलएमए [लिंकर स्क्रिप्ट] (https://sourceware.org/binutils/docs-2.18/ld/Output-Section-LMA.html) द्वारा दिया गया है। ('एटी' का उपयोग कर)। – ysdx