3.4.1. Type 1: one load region and contiguous output regions

An image of this type consists of a single load region in the load view and the three execution regions are placed contiguously in the memory map. This approach is suitable for systems that load programs into RAM, for example, an OS bootloader, or a desktop system (see Figure 3.3).

Figure 3.3. Type 1

Load view

The single load region consists of the RO and RW output sections placed consecutively. The ZI output section does not exist at load time. It is created before execution using the output section description in the image file.

Execution view

The three execution regions containing the RO, RW, and ZI output sections are arranged contiguously. The execution address of the RO and RW execution regions are the same as their load addresses, so nothing has to be moved from its load address to its execution address. However, the ZI execution region that contains the ZI output section is created before execution begins.

Use armlink option -ro-base address to specify the load and execution address of the region containing the RO output. The default address is 0x8000 as shown in Figure 3.3.

The -reloc option is used to make relocatable images. Used on its own, -reloc makes an image similar to Simple type 1, but the single load region has the RELOC attribute.

Copyright © 2002 ARM Limited. All rights reserved.ARM DUI 0212A
Non-Confidential