summaryrefslogtreecommitdiff
path: root/kernel/memory
diff options
context:
space:
mode:
authorFreya Murphy <freya@freyacat.org>2025-04-21 16:44:18 -0400
committerFreya Murphy <freya@freyacat.org>2025-04-21 16:44:18 -0400
commita0c8aa6aedc4177823e58a66793af57a57dfb56f (patch)
treec446a27331c1bf6ec115f61f4f38d170b251278c /kernel/memory
parentfs read/write functions, initrd (diff)
downloadcomus-a0c8aa6aedc4177823e58a66793af57a57dfb56f.tar.gz
comus-a0c8aa6aedc4177823e58a66793af57a57dfb56f.tar.bz2
comus-a0c8aa6aedc4177823e58a66793af57a57dfb56f.zip
fmt, rename some fns
Diffstat (limited to '')
-rw-r--r--kernel/memory/memory.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/kernel/memory/memory.c b/kernel/memory/memory.c
index de94fe3..1d10414 100644
--- a/kernel/memory/memory.c
+++ b/kernel/memory/memory.c
@@ -10,7 +10,7 @@
#include "physalloc.h"
mem_ctx_t kernel_mem_ctx;
-struct mem_ctx_s _kernel_mem_ctx;
+static struct mem_ctx_s _kernel_mem_ctx;
extern volatile char kernel_pml4[];
extern struct virt_ctx kernel_virt_ctx;
@@ -64,6 +64,11 @@ void mem_ctx_free(mem_ctx_t ctx)
panic("not yet implemented");
}
+void mem_ctx_switch(mem_ctx_t ctx)
+{
+ __asm__ volatile("mov %0, %%cr3" ::"r"(ctx->pml4) : "memory");
+}
+
void memory_init(void)
{
struct memory_map mmap;