diff options
author | Alex Auvolat <alex.auvolat@ens.fr> | 2015-02-13 18:19:47 +0100 |
---|---|---|
committer | Alex Auvolat <alex.auvolat@ens.fr> | 2015-02-13 18:19:47 +0100 |
commit | 7aafc22a01de5cabb99aed76782f6c0999b7de05 (patch) | |
tree | 8f20a49e463a145b0fed2ea3256407b5e6316ba4 /src/kernel/include/paging.h | |
parent | f67c0b7e20ef0816a2d9047fd20346e3ede98b75 (diff) | |
download | kogata-7aafc22a01de5cabb99aed76782f6c0999b7de05.tar.gz kogata-7aafc22a01de5cabb99aed76782f6c0999b7de05.zip |
Add stubs for process-related functions.
Diffstat (limited to 'src/kernel/include/paging.h')
-rw-r--r-- | src/kernel/include/paging.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/kernel/include/paging.h b/src/kernel/include/paging.h index 56fa7fa..67f9fef 100644 --- a/src/kernel/include/paging.h +++ b/src/kernel/include/paging.h @@ -2,6 +2,7 @@ #include <sys.h> #include <stdbool.h> +#include <idt.h> // Bits in the error code for page fault #define PF_PRESENT_BIT (1<<0) @@ -13,6 +14,8 @@ struct page_directory; typedef struct page_directory pagedir_t; +typedef void (*user_pf_handler_t)(void* handler_data, registers_t *regs, void* addr); + void paging_setup(void* kernel_data_end); pagedir_t *get_current_pagedir(); @@ -31,7 +34,7 @@ void pd_unmap_page(void* vaddr); // does nothing if page not mapped // case both might require the allocation of a new PT at the same location. These // cases are well-handled (the pagedir_t type contains a mutex used for this) -pagedir_t *create_pagedir(); // returns zero on error +pagedir_t *create_pagedir(user_pf_handler_t pf, void* pf_handler_data); // returns zero on error void delete_pagedir(pagedir_t *pd); /* vim: set ts=4 sw=4 tw=0 noet :*/ |