diff options
Diffstat (limited to 'src/stem/task')
-rw-r--r-- | src/stem/task/task.c | 6 | ||||
-rw-r--r-- | src/stem/task/task.h | 2 |
2 files changed, 3 insertions, 5 deletions
diff --git a/src/stem/task/task.c b/src/stem/task/task.c index 5ab001c..0352308 100644 --- a/src/stem/task/task.c +++ b/src/stem/task/task.c @@ -25,7 +25,7 @@ struct thread *threads = 0, *current_thread = 0, *idle_thread; uint32_t tasking_tmpStack[0x4000]; -void tasking_init(thread_entry whereToGo, void *data) { +void tasking_init() { cli(); kernel_process = kmalloc(sizeof(struct process)); //This process must be hidden to users kernel_process->pid = kernel_process->uid = kernel_process->threads = 0; @@ -36,10 +36,8 @@ void tasking_init(thread_entry whereToGo, void *data) { current_thread = 0; idle_thread = thread_new(kernel_process, task_idle, 0); threads = 0; //Do not include idle thread in threads - thread_new(kernel_process, whereToGo, data); sti(); - monitor_write("Tasking starting\n"); - tasking_switch(); + monitor_write("Tasking set up\n"); } static struct thread *thread_next() { diff --git a/src/stem/task/task.h b/src/stem/task/task.h index 1d1d121..c9f1794 100644 --- a/src/stem/task/task.h +++ b/src/stem/task/task.h @@ -41,7 +41,7 @@ struct thread { extern struct thread *current_thread; -void tasking_init(thread_entry whereToGo, void *data); +void tasking_init(); void tasking_switch(); void tasking_updateKernelPagetable(uint32_t idx, struct page_table *table, uint32_t tablePhysical); uint32_t tasking_handleException(struct registers *regs); |