6 _kernel_base = 0xFFFF800000000000;
9 lowStart = start - _kernel_base;
11 OUTPUT_FORMAT(elf64-x86-64)
13 OUTPUT_FORMAT(elf32-i386)
14 OUTPUT_ARCH(i386:x86-64)
18 . = 0x100000 + SIZEOF_HEADERS;
20 .multiboot : AT(ADDR(.multiboot)) {
26 .text ALIGN(0x1000): AT(ADDR(.text) - _kernel_base) {
30 .usertext ALIGN(0x1000): AT(ADDR(.usertext) - _kernel_base) {
36 .rodata ALIGN(0x1000): AT(ADDR(.rodata) - _kernel_base) {
42 gKernelModulesEnd = .;
46 gKernelSymbolsEnd = .;
49 .debug_abbrev : { *(.debug_abbrev) }
50 .debug_info : { *(.debug_info) }
51 .debug_line : { *(.debug_line) }
52 .debug_loc : { *(.debug_loc) }
53 .debug_pubnames : { *(.debug_pubnames) }
54 .debug_aranges : { *(.debug_aranges) }
55 .debug_ranges : { *(.debug_ranges) }
56 .debug_str : { *(.debug_str) }
57 .debug_frame : { *(.debug_frame) }
60 .padata ALIGN (0x1000) : AT(ADDR(.padata) - _kernel_base) {
64 .data ALIGN (0x1000) : AT(ADDR(.data) - _kernel_base) {
69 .bss : AT(ADDR(.bss) - _kernel_base) {
75 gKernelEnd = (. + 0xFFF)&0xFFFFFFFFFFFFF000;