Go to the documentation of this file.
15 #define RUN_IN_ADDRESS_SPACE(addr_space,codeblock) do { \
16 void* old_address_space=get_address_space(); \
17 load_address_space(addr_space); \
19 load_address_space(old_address_space); \
31 void map_pages(
void* virt_addr_ptr,
void* phys_addr_ptr,
int num_pages,
char usr,
char wr);
38 void unmap_pages(
void* start_virt,
int num_pages,
int free_phys);
void alloc_pages_virt(int num_pages, void *addr)
Definition: paging.c:141
void * paging_new_address_space()
Definition: paging.c:153
void load_address_space(void *address_space)
Definition: paging.c:168
void map_pages(void *virt_addr_ptr, void *phys_addr_ptr, int num_pages, char usr, char wr)
Definition: paging.c:46
void * get_address_space()
Definition: paging.c:231
void unmap_pages(void *start_virt, int num_pages, int free_phys)
Definition: paging.c:172
void * virt_to_phys(void *virt_addr)
Definition: paging.c:127
void paging_init()
Definition: paging.c:193
char is_page_present(size_t page)
Definition: paging.c:37
void * alloc_pages(int num_pages)
Definition: paging.c:121
void dealloc_pages(int num_pages, void *addr)
Definition: paging.c:237
void * find_free_pages(int num_pages)
Definition: paging.c:76