POK(kernelpart)
|
Handle address spaces. More...
#include <types.h>
#include <errno.h>
#include <libc.h>
#include <bsp.h>
#include <arch.h>
#include <arch/x86/interrupt.h>
#include "gdt.h"
#include "tss.h"
#include "space.h"
Go to the source code of this file.
Macros | |
#define | KERNEL_STACK_SIZE 8192 |
Functions | |
pok_ret_t | pok_create_space (uint8_t partition_id, uint32_t addr, uint32_t size) |
pok_ret_t | pok_space_switch (uint8_t old_partition_id, uint8_t new_partition_id) |
uint32_t | pok_space_base_vaddr (uint32_t addr) |
uint32_t | pok_space_context_create (uint8_t partition_id, uint32_t entry_rel, uint32_t stack_rel, uint32_t arg1, uint32_t arg2) |
void | pok_dispatch_space (uint8_t partition_id, uint32_t user_pc, uint32_t user_sp, uint32_t kernel_sp, uint32_t arg1, uint32_t arg2) |
Handle address spaces.
Definition in file space.c.
Set ptd and pte for the given partition.
Definition at line 40 of file space.c.
void pok_dispatch_space | ( | uint8_t | partition_id, |
uint32_t | user_pc, | ||
uint32_t | user_sp, | ||
uint32_t | kernel_sp, | ||
uint32_t | arg1, | ||
uint32_t | arg2 | ||
) |
Definition at line 114 of file space.c.
Definition at line 64 of file space.c.
uint32_t pok_space_context_create | ( | uint8_t | partition_id, |
uint32_t | entry_rel, | ||
uint32_t | stack_rel, | ||
uint32_t | arg1, | ||
uint32_t | arg2 | ||
) |
Create a new context in the given space
Initilize thread stack.
Definition at line 70 of file space.c.
Switch from one space to another
Switch adress space in MMU (context register).
Definition at line 53 of file space.c.