KernOS
|
Virtual memory namespace. More...
Namespaces | |
PDA | |
Page directory access (lower 12 bits of page directory entry) | |
PTA | |
Page table access (lower 12 bits of page table entry) | |
Functions | |
void | InitializePageDirectory (uint32_t PageDirectory[PD_SIZE]) |
void | MapPageTable (const size_t Idx, uint32_t PageDirectory[PD_SIZE], uint32_t PageTable[PT_SIZE]) |
Map page table. More... | |
void | InstallPaging (const uint32_t PageDirectory[]) |
Set cr3 to page directory, and turn on paging. More... | |
Variables | |
const size_t | PD_SIZE = 1024 |
page directory size More... | |
const size_t | PT_SIZE = 1024 |
page table size More... | |
const size_t | PG_SIZE = 4096 |
page size More... | |
uint32_t | page_directory [PD_SIZE][[gnu::aligned(PG_SIZE)]] |
uint32_t | pagetable0 [PT_SIZE][[gnu::aligned(PG_SIZE)]] |
Virtual memory namespace.
void VM::InitializePageDirectory | ( | uint32_t | PageDirectory[PD_SIZE] | ) |
Definition at line 21 of file virtualmemory.cpp.
void VM::InstallPaging | ( | const uint32_t | PageDirectory[] | ) |
Set cr3 to page directory, and turn on paging.
PageDirectory |
Definition at line 50 of file virtualmemory.cpp.
void VM::MapPageTable | ( | const size_t | Idx, |
uint32_t | PageDirectory[PD_SIZE], | ||
uint32_t | PageTable[PT_SIZE] | ||
) |
Map page table.
Idx | |
PageDirectory | |
PageTable |
Definition at line 34 of file virtualmemory.cpp.
Definition at line 18 of file virtualmemory.cpp.
Definition at line 19 of file virtualmemory.cpp.
const size_t VM::PD_SIZE = 1024 |
page directory size
Definition at line 14 of file virtualmemory.cpp.
const size_t VM::PG_SIZE = 4096 |
page size
Definition at line 16 of file virtualmemory.cpp.
const size_t VM::PT_SIZE = 1024 |
page table size
Definition at line 15 of file virtualmemory.cpp.