summaryrefslogtreecommitdiff
path: root/kernel/linker.ld
diff options
context:
space:
mode:
authorTyler Murphy <=>2023-07-17 00:09:26 -0400
committerTyler Murphy <=>2023-07-17 00:09:26 -0400
commite6bec1afcd1c351c13db821a4bb5e899a6c37901 (patch)
tree132f66efcf1657cb4a735af9cb8c264661549dd3 /kernel/linker.ld
parentformat .env (diff)
downloadfinix-e6bec1afcd1c351c13db821a4bb5e899a6c37901.tar.gz
finix-e6bec1afcd1c351c13db821a4bb5e899a6c37901.tar.bz2
finix-e6bec1afcd1c351c13db821a4bb5e899a6c37901.zip
paging
Diffstat (limited to 'kernel/linker.ld')
-rw-r--r--kernel/linker.ld35
1 files changed, 22 insertions, 13 deletions
diff --git a/kernel/linker.ld b/kernel/linker.ld
index beb44df..541975e 100644
--- a/kernel/linker.ld
+++ b/kernel/linker.ld
@@ -1,31 +1,40 @@
ENTRY(start)
SECTIONS {
- . = 1M;
+
+ . = 0x00100000;
kernel_start = .;
+
+ .multiboot.data : {
+ *(.multiboot.data)
+ }
+
+ .multiboot.text : {
+ *(.multiboot.text)
+ }
+
+ . += 0xC0000000;
- .boot BLOCK(4K) : ALIGN(4K)
- {
- *(.multiboot)
- }
-
- .text BLOCK(4K) : ALIGN(4K)
+ .text ALIGN (4K) : AT (ADDR (.text) - 0xC0000000)
{
*(.text)
}
-
- .rodata BLOCK(4K) : ALIGN(4K)
+ .rodata ALIGN (4K) : AT (ADDR (.rodata) - 0xC0000000)
{
*(.rodata)
}
-
-
- .bss BLOCK(4K) : ALIGN(4K)
+ .data ALIGN (4K) : AT (ADDR (.data) - 0xC0000000)
{
+ *(.data)
+ }
+ .bss ALIGN (4K) : AT (ADDR (.bss) - 0xC0000000)
+ {
+ *(COMMON)
*(.bss)
+ *(.bootstrap_stack)
}
-
+
kernel_end = .;
}