feat(arm64): higher-half kernel, early MMU in boot, and VMM

This commit is contained in:
karina
2026-04-26 21:47:41 +04:00
parent 3a55665bd7
commit b56b55e4b3
14 changed files with 485 additions and 55 deletions
+19 -5
View File
@@ -1,3 +1,8 @@
ENTRY(_start)
KERNEL_PA = 0x40100000;
KERNEL_VA = 0xFFFFFFFF80100000;
PHDRS
{
text PT_LOAD FLAGS(5); /* Read | Execute */
@@ -6,22 +11,31 @@ PHDRS
SECTIONS
{
. = 0x40100000;
. = KERNEL_VA;
_kernelStart = .;
.text : {
.text : AT(ADDR(.text) - KERNEL_VA + KERNEL_PA) {
*(.text.boot)
*(.text*)
} :text
. = ALIGN(8);
.rodata : { *(.rodata*) } :text
.rodata : AT(ADDR(.rodata) - KERNEL_VA + KERNEL_PA) {
*(.rodata*)
} :text
. = ALIGN(4096);
.data : { *(.data*) } :data
.data : AT(ADDR(.data) - KERNEL_VA + KERNEL_PA) {
*(.data*)
} :data
. = ALIGN(8);
.bss : { *(.bss*) *(COMMON) } :data
.bss : AT(ADDR(.bss) - KERNEL_VA + KERNEL_PA) {
__bss_start = .;
*(.bss*)
*(COMMON)
__bss_end = .;
} :data
. = ALIGN(4096);
_kernelEnd = .;