tasking: isolate ring3 tasks
This commit is contained in:
+2
-1
@@ -58,7 +58,8 @@ void *get_physaddr(void *virtualaddr);
|
||||
uint32_t get_pte(void *virtualaddr);
|
||||
void map_page(void* physaddr, void* virtualaddr, unsigned int flags);
|
||||
void unmap_page(void *virtualaddr);
|
||||
int map_page_in_directory(uint32_t* pd_virt_addr, void* phys_addr, void* virt_addr, uint32_t flags);
|
||||
void map_kernel_page(void* virtualaddr, unsigned int flags);
|
||||
void* setup_user_process(void* user_code_phys, uint32_t* user_stack_top);
|
||||
void* setup_user_process(uint32_t* pd, void* user_code_phys, uint32_t* user_stack_top);
|
||||
|
||||
#endif
|
||||
|
||||
+1
-1
@@ -61,7 +61,7 @@ typedef struct Process
|
||||
uint32_t* page_directory; // Директория страниц
|
||||
} Process;
|
||||
|
||||
Process* task_create(uint32_t func, void** args, uint32_t arg_count, uint32_t ring);
|
||||
Process* task_create(uint32_t func, void** args, uint32_t arg_count, uint32_t ring, uint32_t* pagedir);
|
||||
void scheduler_init();
|
||||
void schedule();
|
||||
void scheduler_lock();
|
||||
|
||||
Reference in New Issue
Block a user