Produkty Novinky Články Návody Kontakty

Linker script

Při sestavení binárního obrazu programu musíme linkeru říct, kam má v paměťovém prostoru procesoru umístit jednotlivé sekce programu. Jednoduchý příklad takového předpisu, který se nazývá linker script si nyní popíšeme.
​
/* lm3s800 linker script */
​
MEMORY {
        flash (rx) : ORIGIN = 0x00000000, LENGTH = 64k  
        ram   (rwx): ORIGIN = 0x20000000, LENGTH =  8k 
}
​
_stack_top = 0x20000000 + 8k;
​
SECTIONS {
        .text : {
                *(vectors)
                *(.text) 
                *(.rodata) 
                _text_end = .;
        } > flash
​
        /* initialized data */
        .data : {
                _data_begin = .;
                *(.data)
                . = ALIGN(4);
                _data_end = .;
        } > ram AT > flash
​
        /* uninitialized data */
        .bss : {
                _bss_begin = .;
                *(.bss)
                *(COMMON)
                . = ALIGN(4);
                _bss_end = .;
        } > ram
}