1 /* Simple linker script for the JOS kernel.
2 See the GNU ld 'info' manual ("info ld") to learn the syntax. */
4 OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
10 /* Load the kernel at this address: "." means the current address */
14 *(.text .stub .text.* .gnu.linkonce.t.*)
17 PROVIDE(etext = .); /* Define the 'etext' symbol to this value */
20 *(.rodata .rodata.* .gnu.linkonce.r.*)
23 /* Include debugging information in kernel memory */
25 PROVIDE(__STAB_BEGIN__ = .);
27 PROVIDE(__STAB_END__ = .);
28 BYTE(0) /* Force the linker to allocate space
33 PROVIDE(__STABSTR_BEGIN__ = .);
35 PROVIDE(__STABSTR_END__ = .);
36 BYTE(0) /* Force the linker to allocate space
40 /* Adjust the address for the data segment to the next page */
43 /* The data segment */
57 *(.eh_frame .note.GNU-stack)