X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Farch%2Fx86_64%2Flink.ld;h=ce537f9077917c83ab82200806dc09dbfdc1269c;hb=18b264927674c480481466c40368554fb72f560f;hp=9859c4ec54e90fb3c9f9d941ea6f9c04dbe4c998;hpb=1499c9eb8aa167dff5354a25c5a5bd2d00672a54;p=tpg%2Facess2.git diff --git a/Kernel/arch/x86_64/link.ld b/Kernel/arch/x86_64/link.ld index 9859c4ec..ce537f90 100644 --- a/Kernel/arch/x86_64/link.ld +++ b/Kernel/arch/x86_64/link.ld @@ -1,21 +1,20 @@ /* - * AcessMicro Kernel + * Acess2 x86_64 Kernel * Linker Script */ -_kernel_base = 0xFFFF800000000000; +/* _kernel_base = 0xFFFF800000000000; */ +/* -2 GiB */ +_kernel_base = 0xFFFFFFFF80000000; -/* -lowStart = start - _kernel_base; -ENTRY(start) -OUTPUT_FORMAT(elf64-x86-64) -*/ OUTPUT_FORMAT(elf32-i386) OUTPUT_ARCH(i386:x86-64) -ENTRY (start) +ENTRY(start) SECTIONS { - . = 0x100000 + SIZEOF_HEADERS; + . = 0x100000; + gKernelBase = .; + . += SIZEOF_HEADERS; __load_addr = .; .multiboot : AT(ADDR(.multiboot)) { *(.multiboot) @@ -35,27 +34,18 @@ SECTIONS { .rodata ALIGN(0x1000): AT(ADDR(.rodata) - _kernel_base) { *(.initpd) - *(.rodata) + *(.rodata .rodata.*) *(.rdata) + + . = ALIGN(0x10); gKernelModules = .; *(KMODULES) gKernelModulesEnd = .; - . = ALIGN(4); + . = ALIGN(0x10); gKernelSymbols = .; *(KEXPORT) gKernelSymbolsEnd = .; } - /* - .debug_abbrev : { *(.debug_abbrev) } - .debug_info : { *(.debug_info) } - .debug_line : { *(.debug_line) } - .debug_loc : { *(.debug_loc) } - .debug_pubnames : { *(.debug_pubnames) } - .debug_aranges : { *(.debug_aranges) } - .debug_ranges : { *(.debug_ranges) } - .debug_str : { *(.debug_str) } - .debug_frame : { *(.debug_frame) } - */ .padata ALIGN (0x1000) : AT(ADDR(.padata) - _kernel_base) { *(.padata)