From 64d69d505fdb3b8e415cca0f025e77eb3b09dbe9 Mon Sep 17 00:00:00 2001 From: Gregory Bowne Date: Wed, 28 Jan 2026 10:14:01 -0800 Subject: [PATCH] Create pmm.h --- kernel/pmm.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 kernel/pmm.h diff --git a/kernel/pmm.h b/kernel/pmm.h new file mode 100644 index 0000000..75dfdaf --- /dev/null +++ b/kernel/pmm.h @@ -0,0 +1,21 @@ +#ifndef PMM_H +#define PMM_H + +#include +#include +#include "memmap.h" +#include "paging.h" // For PAGE_SIZE + +#define BLOCKS_PER_BYTE 8 + +void pmm_init(memory_map_entry_t* mmap, uint32_t mmap_size, uintptr_t bitmap_addr); +void pmm_mark_used(uintptr_t addr); +void pmm_mark_free(uintptr_t addr); + +void* pmm_alloc_block(); +void pmm_free_block(void* addr); + +uint32_t pmm_get_used_block_count(); +uint32_t pmm_get_free_block_count(); + +#endif