aboutsummaryrefslogtreecommitdiff
path: root/src/kernel/tasks
diff options
context:
space:
mode:
authorMarvin Borner2020-05-12 16:24:11 +0200
committerMarvin Borner2020-05-12 16:24:11 +0200
commitbbaf93b7c8cc551d0b4b898163c60caaa0f9a279 (patch)
tree858aa2cdcf529877b24e18c6557731d94e66adbc /src/kernel/tasks
parentfa5aa82470783d20621f3d21e419f5b8ce70ad0a (diff)
Fixed page fault in scheduler
Diffstat (limited to 'src/kernel/tasks')
-rw-r--r--src/kernel/tasks/process.c6
-rw-r--r--src/kernel/tasks/process.h2
2 files changed, 5 insertions, 3 deletions
diff --git a/src/kernel/tasks/process.c b/src/kernel/tasks/process.c
index 2f45898..a5b9c87 100644
--- a/src/kernel/tasks/process.c
+++ b/src/kernel/tasks/process.c
@@ -54,10 +54,11 @@ void scheduler(struct regs *regs)
paging_switch_directory(current_proc->cr3);
}
-void process_force_switch(struct regs *regs)
+void process_force_switch()
{
quantum = 0;
- scheduler(regs);
+ timer_wait(1);
+ //scheduler(regs);
}
void process_init(struct process *proc)
@@ -246,5 +247,6 @@ u32 uspawn(char *path)
process_spawn(proc);
log("Spawned");
+ process_force_switch();
return 0;
} \ No newline at end of file
diff --git a/src/kernel/tasks/process.h b/src/kernel/tasks/process.h
index b10c63c..32511c0 100644
--- a/src/kernel/tasks/process.h
+++ b/src/kernel/tasks/process.h
@@ -31,7 +31,7 @@ struct process {
};
void scheduler(struct regs *regs);
-void process_force_switch(struct regs *regs);
+void process_force_switch();
u32 process_spawn(struct process *process);
void process_suspend(u32 pid);