From d1ff7bcc91886626dc9060ec5fb67ee102ab7c1d Mon Sep 17 00:00:00 2001 From: Jon Santmyer Date: Mon, 11 Mar 2024 21:30:31 -0400 Subject: usermode capable kernel with logging syscall --- mem/buddymap.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 mem/buddymap.h (limited to 'mem/buddymap.h') diff --git a/mem/buddymap.h b/mem/buddymap.h new file mode 100644 index 0000000..2f4f5dc --- /dev/null +++ b/mem/buddymap.h @@ -0,0 +1,21 @@ +#ifndef JOVE_MEMORY_BUDDYMAP_H +#define JOVE_MEMORY_BUDDYMAP_H 1 + +#include "memory.h" +#include +#include + +#define MEMMAP_BUDDY_LIMIT (4 * GiB) + +void mem_buddy_set_range(uintptr_t base, size_t length); +void mem_buddy_free_range(uintptr_t base, size_t length); +uintptr_t mem_buddy_takefree(size_t layer); + +#define mem_buddy_takefree_4k() mem_buddy_takefree(0) +#define mem_buddy_takefree_8k() mem_buddy_takefree(1) +#define mem_buddy_takefree_16k() mem_buddy_takefree(2) +#define mem_buddy_takefree_32k() mem_buddy_takefree(3) + +void mem_buddy_setup(void); + +#endif -- cgit v1.2.1