From 876e7174629f92f7af55a6dc7e9b030758d31742 Mon Sep 17 00:00:00 2001 From: Eggert Jung Date: Sat, 10 Jan 2026 22:40:44 +0100 Subject: [PATCH] stats --- kernel/memory/pageframealloc.cc | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/kernel/memory/pageframealloc.cc b/kernel/memory/pageframealloc.cc index 9b38975..03840f7 100644 --- a/kernel/memory/pageframealloc.cc +++ b/kernel/memory/pageframealloc.cc @@ -16,7 +16,6 @@ void PageFrameAllocator::init(){ void* start = memory_map_entry->getStartAddress(); void* end = memory_map_entry->getEndAddress(); bool available = memory_map_entry->isAvailable(); - dout << "Memory: " << hex << start << " to " << end << " is available: " << available << "." << endl; //TODO priotity for conflicting regions for(uint64_t i = (uint64_t)start; i < (uint64_t)end; i += 4096){ @@ -35,9 +34,27 @@ void PageFrameAllocator::init(){ bitmap[pg/8] &= ~(1 << pg%8); } + stats(); } void PageFrameAllocator::stats(){ + Multiboot::Memory* memory_map_entry = Multiboot::getMemoryMap(); + while(memory_map_entry != 0){ + void* start = memory_map_entry->getStartAddress(); + void* end = memory_map_entry->getEndAddress(); + bool available = memory_map_entry->isAvailable(); + dout << "Memory: " << hex << start << " to " << end << " is available: " << available << "." << endl; + memory_map_entry = memory_map_entry->getNext(); + } + + uint64_t pages_available = 0; + for(uint64_t i=0; i