8481b170fef622ba920754fde8f2f2ec6237cc38
[pintos-anon] / src / threads / paging.h
1 #ifndef THREADS_PAGING_H
2 #define THREADS_PAGING_H
3
4 #include <stdbool.h>
5 #include <stdint.h>
6
7 void paging_init (void);
8
9 uint32_t *pagedir_create (void);
10 void pagedir_destroy (uint32_t *);
11 bool pagedir_set_page (uint32_t *pagedir, void *upage, void *kpage,
12                        bool writable);
13 void *pagedir_get_page (uint32_t *pagedir, void *upage);
14 void pagedir_clear_page (uint32_t *pagedir, void *upage);
15
16 void *pagedir_first (uint32_t *pagedir, void **upage);
17 void *pagedir_next (uint32_t *pagedir, void **upage);
18
19 void pagedir_activate (uint32_t *pagedir);
20
21 #endif /* threads/paging.h */