| |||
| Home > Using the Basic Linker Functionality > Using command-line options to create simple images > 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).
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.
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 to
specify the load and execution address of the region containing
the RO output. The default address is address0x8000 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.