diff options
| author | Aleksa Vuckovic <aleksav013@gmail.com> | 2022-08-08 19:50:11 +0200 |
|---|---|---|
| committer | Aleksa Vuckovic <aleksav013@gmail.com> | 2022-08-08 19:50:11 +0200 |
| commit | 0162997df4ae7769bd4fc055b2c03b473846d1f5 (patch) | |
| tree | f6c40a64cbb15cf3fd102e5e8f15b48030e96f4e /kernel/src/kernel.ld | |
| parent | 71396c5cd460890c52e348687e6e7c864e2dfeed (diff) | |
higher half
Diffstat (limited to 'kernel/src/kernel.ld')
| -rw-r--r-- | kernel/src/kernel.ld | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/kernel/src/kernel.ld b/kernel/src/kernel.ld index da5c87c..56b5647 100644 --- a/kernel/src/kernel.ld +++ b/kernel/src/kernel.ld @@ -1,30 +1,36 @@ ENTRY(_start) +KERNEL_PMA = 0x00100000; +KERNEL_VMA = 0xc0000000; + SECTIONS { - . = 1M; + . = KERNEL_PMA; .boot BLOCK(4K) : ALIGN(4K) { KEEP(*(.multiboot_header)) + *(.boot.text) } - .text BLOCK(4K) : ALIGN(4K) + . += KERNEL_VMA; + + .text ALIGN(4K) : AT (ADDR (.text) - KERNEL_VMA) { *(.text) } - .rodata BLOCK(4K) : ALIGN(4K) + .rodata ALIGN(4K) : AT (ADDR (.rodata) - KERNEL_VMA) { *(.rodata) } - .data BLOCK(4K) : ALIGN(4K) + .data ALIGN(4K) : AT (ADDR (.data) - KERNEL_VMA) { *(.data) } - .bss BLOCK(4K) : ALIGN(4K) + .bss ALIGN(4K) : AT (ADDR (.bss) - KERNEL_VMA) { *(COMMON) *(.bss) @@ -32,8 +38,7 @@ SECTIONS /DISCARD/ : { - *(.comment.*) + *(.comment) *(.note.*) - *(.eh_frame) } } |
