pintos/src/userprog/pagedir.h File Reference

#include <stdbool.h>
#include <stdint.h>

Go to the source code of this file.

Functions

uint32_tpagedir_create (void)
void pagedir_destroy (uint32_t *pd)
bool pagedir_set_page (uint32_t *pd, void *upage, void *kpage, bool rw)
void * pagedir_get_page (uint32_t *pd, const void *upage)
void pagedir_clear_page (uint32_t *pd, void *upage)
bool pagedir_is_dirty (uint32_t *pd, const void *upage)
void pagedir_set_dirty (uint32_t *pd, const void *upage, bool dirty)
bool pagedir_is_accessed (uint32_t *pd, const void *upage)
void pagedir_set_accessed (uint32_t *pd, const void *upage, bool accessed)
void pagedir_activate (uint32_t *pd)


Function Documentation

void pagedir_activate ( uint32_t pd  ) 

Definition at line 221 of file pagedir.c.

References base_page_dir, NULL, and vtop().

Referenced by invalidate_pagedir(), process_activate(), and process_exit().

void pagedir_clear_page ( uint32_t pd,
void *  upage 
)

Definition at line 145 of file pagedir.c.

References ASSERT, invalidate_pagedir(), is_user_vaddr(), lookup_page(), NULL, pg_ofs(), and PTE_P.

uint32_t* pagedir_create ( void   ) 

Definition at line 18 of file pagedir.c.

References base_page_dir, memcpy(), NULL, palloc_get_page(), and PGSIZE.

Referenced by load().

void pagedir_destroy ( uint32_t pd  ) 

Definition at line 29 of file pagedir.c.

References ASSERT, base_page_dir, NULL, palloc_free_page(), pd_no(), pde_get_pt(), PGSIZE, PHYS_BASE, pte_get_page(), and PTE_P.

Referenced by process_exit().

void* pagedir_get_page ( uint32_t pd,
const void *  upage 
)

Definition at line 127 of file pagedir.c.

References ASSERT, is_user_vaddr(), lookup_page(), NULL, pg_ofs(), pte_get_page(), and PTE_P.

Referenced by install_page().

bool pagedir_is_accessed ( uint32_t pd,
const void *  upage 
)

Definition at line 194 of file pagedir.c.

References lookup_page(), NULL, and PTE_A.

bool pagedir_is_dirty ( uint32_t pd,
const void *  upage 
)

Definition at line 165 of file pagedir.c.

References lookup_page(), NULL, and PTE_D.

void pagedir_set_accessed ( uint32_t pd,
const void *  upage,
bool  accessed 
)

Definition at line 203 of file pagedir.c.

References invalidate_pagedir(), lookup_page(), NULL, and PTE_A.

void pagedir_set_dirty ( uint32_t pd,
const void *  upage,
bool  dirty 
)

Definition at line 174 of file pagedir.c.

References invalidate_pagedir(), lookup_page(), NULL, and PTE_D.

bool pagedir_set_page ( uint32_t pd,
void *  upage,
void *  kpage,
bool  rw 
)


Generated on Mon Jan 10 16:43:58 2011 for Pintos by  doxygen 1.5.6