From ab7ff12a2f297cded9395136d0d4b2413f1a216b Mon Sep 17 00:00:00 2001 From: david-on-debian Date: Tue, 20 May 2025 20:41:52 -0500 Subject: [PATCH] Upload files to "include/mm" --- include/mm/heap.h | 19 +++++++++++++++++++ include/mm/mm.h | 8 ++++++++ include/mm/paging.h | 9 +++++++++ include/mm/pmm.h | 11 +++++++++++ 4 files changed, 47 insertions(+) create mode 100644 include/mm/heap.h create mode 100644 include/mm/mm.h create mode 100644 include/mm/paging.h create mode 100644 include/mm/pmm.h diff --git a/include/mm/heap.h b/include/mm/heap.h new file mode 100644 index 0000000..96f2287 --- /dev/null +++ b/include/mm/heap.h @@ -0,0 +1,19 @@ +#ifndef _HEAP_H +#define _HEAP_H + +#include + +#define HEAP_START 0xC0000000 +#define HEAP_SIZE (1024 * 4096) /* 1MB heap */ + +void heap_init(void); + +void* malloc(size_t size); +void* malloc_aligned(size_t size, size_t alignment); + +void* calloc(size_t nmemb, size_t size); +void* realloc(void* ptr, size_t size); + +void free(void* ptr); + +#endif diff --git a/include/mm/mm.h b/include/mm/mm.h new file mode 100644 index 0000000..acbdfee --- /dev/null +++ b/include/mm/mm.h @@ -0,0 +1,8 @@ +#ifndef _MM_H +#define _MM_H + +#include +#include +#include + +#endif diff --git a/include/mm/paging.h b/include/mm/paging.h new file mode 100644 index 0000000..d6152b7 --- /dev/null +++ b/include/mm/paging.h @@ -0,0 +1,9 @@ +#ifndef _PAGING_H +#define _PAGING_H + +#include + +void paging_init(void); +void map_page(void* phys, void* virt); + +#endif diff --git a/include/mm/pmm.h b/include/mm/pmm.h new file mode 100644 index 0000000..e59ea60 --- /dev/null +++ b/include/mm/pmm.h @@ -0,0 +1,11 @@ +#ifndef _PMM_H +#define _PMM_H + +#include +#include + +void pmm_init(multiboot_info_t* mb_info); +void* alloc_page(void); +void free_page(void* ptr); + +#endif