Hello ,
I was just reading about scatter file and found this link below:
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0377c/Chdiehag.html
In chapter "Images with a complex memory map " the example shows how the memory is mapped for two object files.
DRAM 0x18000 0x8000 ; Start address for this exec region (0x18000),
; Maximum size of this exec region (0x8000)
{
program1.o (+RW, +ZI) ; Place all RW and ZI data from
; program1.o into this exec region
}
This lines specifies to the linker that Zero Initialized data shall be place into DRAM but in the execution view of the memory it appears in SRAM region (ZI Section #1)
Is the picture wrong or my understanding?
Thank you in advance !!
Hello raducara,
The link you provide seems to be incorrect, but I believe you referring to this Images with a complex memory map
I believe the Figure is correct: notice there are 2 Load Regions (LOAD_ROM_1 and LOAD_ROM_2). The execution section you mention DRAM is in LOAD_ROM_1 which is shown properly in the Execution view of the diagram at address 0x18000. LOAD_ROM_2 has the execution section SRAM which is whon properly in the the Execution view at address 0x08000.
Hope that helps,
-Duberly
Hello Duberly,
Thank you for the answer . My question was why ZI section 1 is placed in SRAM and ZI section 2 is placed in DRAM .
My understanding from the scatter file is that ZI sect 1 from prog1.o will be placed in DRAM and ZI sect 2 from prog2.o will be placed in SRAM.
I don't get it !!!!
Best
Radu.
Sent from Samsung Mobile
Hi Radu,
The graphic is wrong, RW#1/ZI#1 would both be in DRAM and RW#2/ZI#2 would be in SRAM.
No wonder you're confused!
Niall.
Thank you Niall !!!
I agree with Niall, the graph is not correct... I'll put forth a request for correction. Thanks. -Duberly