From 5a9a57177f730d1c00ab2b47f91e5ea2660a4f77 Mon Sep 17 00:00:00 2001 From: Loic Guegan Date: Tue, 13 Apr 2021 15:31:45 +0200 Subject: Enable .bss zeroing and improve paging --- src/core/paging.h | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'src/core/paging.h') diff --git a/src/core/paging.h b/src/core/paging.h index 1e8f4e3..ad3671e 100644 --- a/src/core/paging.h +++ b/src/core/paging.h @@ -2,12 +2,25 @@ #define PAGING_H #define PAGING_CR0_BIT 0x80000000 -#define PAGING_DIR_LOCATION 0x1000 -#define PAGING_TABLE_LOCATION 0x5000 +#define PAGING_PAGE_SIZE 4096 +#define PAGING_MAX_PAGES 2048 +#if PAGING_MAX_PAGES%1024>0 + #define PAGING_MAX_DIR_ENTRY PAGING_MAX_PAGES/1024+1 +#else + #define PAGING_MAX_DIR_ENTRY PAGING_MAX_PAGES/1024 +#endif /* * Configure and enable paging */ void paging_enable(); +char* paging_allocate_next_page(); +void paging_set_usage(int addr,char state); +/** + * Create a new page directory containing + * p pages. + */ +char *paging_allocate(int p); +void paging_dump(int min,int max); #endif \ No newline at end of file -- cgit v1.2.3