|
Kintsugi OS 0.5.0
x86 Monolithic OS
|
Macros | |
| #define | FRAMES (PMM_LIMIT / PAGE_SIZE) |
Functions | |
| static u32 directory[1024] | __attribute__ ((aligned(4096))) |
| static int | bit (u32 *map, u32 n) |
| static void | set (u32 *map, u32 n) |
| static void | clear (u32 *map, u32 n) |
| u32 | pmm_alloc_page (void) |
| int | pmm_free_page (u32 address) |
| int | vmm_map_page (u32 va, u32 pa, u32 flags) |
| int | vmm_unmap_page (u32 va) |
| u32 | vmm_translate (u32 va) |
| void | memory_init (void) |
| memory_stats_t | memory_stats (void) |
| u32 | vmm_space_create (void) |
| void | vmm_space_switch (u32 space) |
| u32 | vmm_user_physical (u32 space, u32 address, int write) |
| int | vmm_user_page (u32 space, u32 address, int writable) |
| void | vmm_space_destroy (u32 space) |
| void | memory_print_info (void) |
| void | memory_print_map (void) |
Variables | |
| static u32 | used [FRAMES/32] |
| static u32 | owned [FRAMES/32] |
| static memory_region_t | regions [64] |
| static memory_stats_t | stats |
| static u32 | cursor = 256 |
|
static |
| void memory_init | ( | void | ) |
| void memory_print_info | ( | void | ) |
| void memory_print_map | ( | void | ) |
| memory_stats_t memory_stats | ( | void | ) |
| u32 pmm_alloc_page | ( | void | ) |
| int pmm_free_page | ( | u32 | address | ) |
| u32 vmm_space_create | ( | void | ) |
| void vmm_space_destroy | ( | u32 | space | ) |
| void vmm_space_switch | ( | u32 | space | ) |
| int vmm_unmap_page | ( | u32 | va | ) |
|
static |
|
static |
|
static |