06.02.2013 Views

ARM Compiler toolchain Using the Linker - ARM Information Center

ARM Compiler toolchain Using the Linker - ARM Information Center

ARM Compiler toolchain Using the Linker - ARM Information Center

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

4.3 Load view and execution view of an image<br />

4.3.1 See also<br />

RAM<br />

ROM<br />

Image structure and generation<br />

Image regions are placed in <strong>the</strong> system memory map at load time. Before you can execute <strong>the</strong><br />

image, you might have to move some of its regions to <strong>the</strong>ir execution addresses and create <strong>the</strong><br />

ZI output sections. For example, initialized RW data might have to be copied from its load<br />

address in ROM to its execution address in RAM.<br />

The memory map of an image has <strong>the</strong> following distinct views:<br />

Load view Describes each image region and section in terms of <strong>the</strong> address where it<br />

is located when <strong>the</strong> image is loaded into memory, that is, <strong>the</strong> location<br />

before image execution starts.<br />

Execution view Describes each image region and section in terms of <strong>the</strong> address where it<br />

is located during image execution.<br />

The following figure shows <strong>the</strong>se views:<br />

Load view<br />

RW section<br />

RO section<br />

0x0FFFF<br />

Memory initialized<br />

to zero<br />

0x0A000<br />

0x08000<br />

0x06000<br />

0x00000<br />

The following table compares <strong>the</strong> load and execution views:<br />

Load Description Execution Description<br />

Load<br />

address<br />

The address where a section or region is<br />

loaded into memory before <strong>the</strong> image<br />

containing it starts executing. The load<br />

address of a section or a non-root region<br />

can differ from its execution address<br />

Execution<br />

address<br />

Load region A region in <strong>the</strong> load address space Execution<br />

region<br />

Execution view<br />

ZI section<br />

RW section<br />

RO section<br />

Figure 4-2 Load and execution memory maps<br />

Table 4-1 Comparing load and execution views<br />

The address where a section or region is<br />

located while <strong>the</strong> image containing it is<br />

being executed<br />

A region in <strong>the</strong> execution address space<br />

Concepts<br />

• The image structure on page 4-3<br />

• Input sections, output sections, regions, and Program Segments on page 4-5<br />

• Methods of specifying an image memory map with <strong>the</strong> linker on page 4-8<br />

<strong>ARM</strong> DUI 0474C Copyright © 2010-2011 <strong>ARM</strong>. All rights reserved. 4-6<br />

ID080411 Non-Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!