1 /* ld script to make i386 Linux kernel
2 * Written by Martin Mares <mj@atrey.karlin.mff.cuni.cz>
4 OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
9 . = 0xC0000000 + 0x100000;
10 _text = .; /* Text and read-only data */
16 .text.lock : { *(.text.lock) } /* out-of-line lock text */
17 .rodata : { *(.rodata) }
18 .kstrtab : { *(.kstrtab) }
20 . = ALIGN(16); /* Exception table */
21 __start___ex_table = .;
22 __ex_table : { *(__ex_table) }
23 __stop___ex_table = .;
25 __start___ksymtab = .; /* Kernel symbol table */
26 __ksymtab : { *(__ksymtab) }
29 _etext = .; /* End of text section */
36 _edata = .; /* End of data section */
38 . = ALIGN(8192); /* init_task */
39 .data.init_task : { *(.data.init_task) }
41 . = ALIGN(4096); /* Init code and data */
43 .text.init : { *(.text.init) }
44 .data.init : { *(.data.init) }
49 .data.cacheline_aligned : { *(.data.cacheline_aligned) }
52 .data.page_aligned : { *(.data.idt) }
55 __bss_start = .; /* BSS */
61 /* Stabs debugging sections. */
62 .stab 0 : { *(.stab) }
63 .stabstr 0 : { *(.stabstr) }
64 .stab.excl 0 : { *(.stab.excl) }
65 .stab.exclstr 0 : { *(.stab.exclstr) }
66 .stab.index 0 : { *(.stab.index) }
67 .stab.indexstr 0 : { *(.stab.indexstr) }
68 .comment 0 : { *(.comment) }