diff options
Diffstat (limited to '')
-rw-r--r-- | user/lib/alloc.c (renamed from lib/alloc.c) | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/alloc.c b/user/lib/alloc.c index dfa2df5..49c762b 100644 --- a/lib/alloc.c +++ b/user/lib/alloc.c @@ -1,8 +1,10 @@ #include <stdint.h> #include <stdlib.h> #include <string.h> +#include <unistd.h> #define MAGIC 0xBEEFCAFE +#define PAGE_SIZE 4096 struct page_header { struct page_header *next; @@ -37,6 +39,7 @@ static void *alloc_new(size_t size) { size_t pages = ((size + header_len) / PAGE_SIZE) + 1; + // FIXME: use brk/sbrk void *addr = alloc_pages(pages); void *mem = (char *)addr + header_len; @@ -206,6 +209,7 @@ void free(void *ptr) header->next->prev = header->prev; if (header->prev) header->prev->next = header->next; + // FIXME: use brk/sbrk free_pages(header); } } |