Распечатка 3.1 Пример скрипта компоновщика |
Предыдущая Содержание Следующая |
Распечатка 3.1
OUTPUT_ARCH(mips) ENTRY(kernel_entry) SECTIONS { /* Только читаемые секции, объединённые в текстовый сегмент: */ . = 0x80100000; .init : { *(.init) } = 0
.text : { _ftext = . ; /* Начало текстового сегмента */ *(.text) *(.rodata) *(.rodata.*) *(.rodata1) /* секции .gnu.warning специально обрабатываемые elf32.em. */ *(.gnu.warning) } =0
.kstrtab : { *(.kstrtab) }
. = ALIGN(16); /* Таблица запуска */ __start___ex_table = .; __ex_table : { *(__ex_table) } __stop___ex_table = .;
__start___dbe_table = .; __dbe_table : { *(__dbe_table) } __stop___dbe_table = .;
__start___ksymtab = .; /* Таблица символов ядра */ __ksymtab : { *(__ksymtab) } __stop___ksymtab = .;
_etext = .; /* Конец текстового сегмента */
. = ALIGN(8192); .data.init_task : { *(.data.init_task)
. = ALIGN(4096); __init_begin = .; /* Начало кода запуска */ .text.init : { *(.text.init) } .data.init : { *(.data.init) }
. = ALIGN(16); __setup_start = .; .setup.init : { *(.setup.init) } __setup_end = .;
__initcall_start = .; .initcall.init : { *(.initcall.init) } __initcall_end = .;
. = ALIGN(4096); /* Выравнивание двойной страницы для init_task_union */ __init_end = .; /* Конец кода запуска */
. = .; .data : { _fdata = . ; /* Начало сегмента данных */ *(.data) /* Выравнивание для начального образа электронного диска (INITRD) */ . = ALIGN(4096);
__rd_start = .; *(.initrd) . = ALIGN(4096); __rd_end = .;
CONSTRUCTORS }
.data1 : { *(.data1) } _gp = . + 0x8000; .lit8 : { *(.lit8) } .lit4 : { *(.lit4) } .ctors : { *(.ctors) } .dtors : { *(.dtors) } .got : { *(.got.plt) *(.got) } .dynamic : { *(.dynamic) } .sdata : { *(.sdata) }
. = ALIGN(4); _edata = .; /* Конец сегмента данных */ PROVIDE (edata = .);
__bss_start = .; /* Начало сегмента bss */ _fbss = .; .sbss : { *(.sbss) *(.scommon) } .bss : { *(.dynbss) *(.bss) *(COMMON) . = ALIGN(4); _end = . ; /* Конец bss */ PROVIDE (end = .); } }
|
Предыдущая Содержание Следующая |