Files
novaOS/link.ld
Alexander Neuhäuser f78388ee2c feat: implement MMU core functionality
* feat: Implement a basic MMU configuration

* feat: Enhance MMU by separating sections and configuring permissions

* feat: Update MMU configuration and memory allocation functions

* fix: Level 3 translation fault

* docs: add code documentation

* fix: linter

* feat: map translation tables to kernel space

* feat: move el1 stack to kernel VA space

* feat: use virtual memory for heap allocation

* docs: update Readme
2026-03-17 19:30:45 +01:00

51 lines
787 B
Plaintext

SECTIONS {
. = 0x80000;
.text ALIGN(4) : {
KEEP(*(.text._start))
*(.text .text.*)
}
.rodata : {
*(.rodata .rodata.*)
}
.data ALIGN(2M) : {
_data = .;
*(.data .data.*)
}
.bss ALIGN(16) (NOLOAD) : {
__bss_start = .;
*(.bss .bss.*)
__bss_end = .;
}
.vector_table ALIGN(2K) : {
KEEP(*(.vector_table))
}
# EL2 Stack
.stack ALIGN(16): {
__stack_start = .;
. += 100K; #100kB stack
. = ALIGN(16);
__stack_end = .;
}
. = ALIGN(2M);
__kernel_end = .;
.stack_el0 : {
__stack_start_el0 = .;
. += 10K; #10kB stack
__stack_end_el0 = .;
}
. = ALIGN(2M);
_end = .;
}
__bss_size = (__bss_end - __bss_start) >> 3;