diff options
author | Ian Moffett <ian@osmora.org> | 2025-09-17 15:06:35 -0400 |
---|---|---|
committer | Ian Moffett <ian@osmora.org> | 2025-09-17 15:08:32 -0400 |
commit | bb840ef326ab3570d201e045e894710fd6db18f2 (patch) | |
tree | 89133e8bfed5ead413648ad0f2ef331ec40ba031 /src/sys/include/os | |
parent | 9ed326263929d215887dd9bab18d292d6632ed34 (diff) |
kern/amd64: proc: Add initial context switch logic
This commit introduces new functions that will be useful for
having multiple processes run on the system.
- Add md_proc_yield()
- Add md_proc_kick()
- Add md_sched_switch()
Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'src/sys/include/os')
-rw-r--r-- | src/sys/include/os/sched.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/sys/include/os/sched.h b/src/sys/include/os/sched.h index b393395..1850366 100644 --- a/src/sys/include/os/sched.h +++ b/src/sys/include/os/sched.h @@ -35,6 +35,7 @@ #include <sys/proc.h> #include <os/spinlock.h> +#define SCHED_QUANTUM 10000 #define SCHED_NQUEUES 4 /* @@ -50,6 +51,13 @@ struct sched_queue { }; /* + * Context switch to another process + * + * @tf: Current CPU context frame + */ +void md_sched_switch(struct trapframe *tf); + +/* * Enqueue a new process to a queue * * @q: Queue to target |