From 43f4a1f4b1b718c2b25545a8b157cd4e6aa96470 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Mon, 16 Aug 2021 13:59:39 -0400 Subject: [PATCH] Show kernel size/address --- src/hos_main.c | 1 + src/mm.c | 13 +++++++++++-- src/mm.h | 2 ++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/hos_main.c b/src/hos_main.c index 2ea1fd5..208eec0 100644 --- a/src/hos_main.c +++ b/src/hos_main.c @@ -21,4 +21,5 @@ void hos_main(uint32_t mbinfo_addr) mm_init(); mbinfo_load(); klog_printf("Found %dKB of usable RAM\n", mm_get_total_ram() / 1024u); + klog_printf("Kernel is %dKB at 0x%x\n", mm_get_kernel_size() / 1024u, mm_get_kernel_address()); } diff --git a/src/mm.c b/src/mm.c index 39dc112..bfd49ae 100644 --- a/src/mm.c +++ b/src/mm.c @@ -1,5 +1,4 @@ #include "mm.h" -#include "klog.h" #define PAGE_SIZE 4096u @@ -65,10 +64,20 @@ void mm_register_ram_region(uint64_t base, uint32_t size) void mm_init(void) { - mm_total_ram = &_hos_mem_end - &_hos_mem_start; + mm_total_ram = mm_get_kernel_size();; } size_t mm_get_total_ram(void) { return mm_total_ram; } + +size_t mm_get_kernel_address(void) +{ + return (size_t)&_hos_mem_start; +} + +size_t mm_get_kernel_size(void) +{ + return &_hos_mem_end - &_hos_mem_start; +} diff --git a/src/mm.h b/src/mm.h index 0661fa9..d6c2d12 100644 --- a/src/mm.h +++ b/src/mm.h @@ -7,5 +7,7 @@ void mm_init(void); void mm_register_ram_region(uint64_t base, uint32_t size); size_t mm_get_total_ram(void); +size_t mm_get_kernel_address(void); +size_t mm_get_kernel_size(void); #endif