|
Public Types |
enum | Zero_fill { NO_ZERO_FILL = 0,
ZERO_FILL,
ZERO_MAP
} |
Static Public Member Functions |
static void | init () |
static void * | page_alloc (void *address, Zero_fill zf=NO_ZERO_FILL, Page::Attribs pa=Page::USER_NO) |
| Allocate a page of kernel memory and insert it into the master page directory.
|
static void | page_free (void *page) |
| Free the page at the given virtual address.
|
static void * | page_attr (void *address, Page::Attribs pa) |
| Set the page attributes of an already existing page of kernel memory.
|
static bool | local_alloc (Space *space, Address virt_addr, int size, unsigned int page_attributes) |
| Allocate size pages of kernel memory and map it sequentially to the given address space, starting at virt_addr.
|
static void | local_free (Space *space, Address virt_addr, int size) |
| Free the sequentially mapped memory in the given address space, starting at virt_addr.
|
Static Private Member Functions |
static void | page_map (void *address, int order, Zero_fill zf, Address phys) |
static void | page_unmap (void *address, int size) |
Static Private Attributes |
static P_ptr< void > | zero_page |