Kernel: Move kmalloc and MMU to Memory directory

This commit is contained in:
Bananymous
2023-04-14 13:30:21 +03:00
parent 998ae511a3
commit fdb4eb6042
15 changed files with 16 additions and 17 deletions

View File

@@ -0,0 +1,31 @@
#pragma once
#include <stddef.h>
#include <stdint.h>
class MMU
{
public:
enum Flags : uint8_t
{
Present = 1,
ReadWrite = 2,
UserSupervisor = 4,
};
public:
static void intialize();
static MMU& get();
MMU();
~MMU();
void allocate_page(uintptr_t, uint8_t);
void allocate_range(uintptr_t, ptrdiff_t, uint8_t);
void unallocate_page(uintptr_t);
void unallocate_range(uintptr_t, ptrdiff_t);
private:
uint64_t* m_highest_paging_struct;
};

View File

@@ -0,0 +1,10 @@
#pragma once
#include <stddef.h>
void kmalloc_initialize();
void kmalloc_dump_info();
void* kmalloc(size_t);
void* kmalloc(size_t, size_t);
void kfree(void*);