summaryrefslogtreecommitdiffstats
path: root/proc/scheduler.h
diff options
context:
space:
mode:
authorJon Santmyer <jon@jonsantmyer.com>2026-10-09 16:50:13 -0400
committerJon Santmyer <jon@jonsantmyer.com>2026-10-09 16:50:13 -0400
commit5ab3b18865eb813d433a6c0687dfa1f62a1b6055 (patch)
tree8272e561d7d7a83780fc05e16722f29f58b18a28 /proc/scheduler.h
parentcc23ea5a4b38807e79aceb23e6f43e965926618f (diff)
downloadjove-kernel-5ab3b18865eb813d433a6c0687dfa1f62a1b6055.tar.gz
jove-kernel-5ab3b18865eb813d433a6c0687dfa1f62a1b6055.tar.bz2
jove-kernel-5ab3b18865eb813d433a6c0687dfa1f62a1b6055.zip
add ipc send/recv mechanism for kernel objects.
Diffstat (limited to 'proc/scheduler.h')
-rw-r--r--proc/scheduler.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/proc/scheduler.h b/proc/scheduler.h
index 0371e86..2fc0c44 100644
--- a/proc/scheduler.h
+++ b/proc/scheduler.h
@@ -5,10 +5,15 @@
void scheduler_init(jove_owned_obj_t *pcb_obj, void *process_main);
+void scheduler_savestate(void);
+void scheduler_restorestate(void);
+
void scheduler_switch(void *this_sp, void *other_sp);
void _scheduler_switch_pcb_arch(pcb_t *target);
int scheduler_yield(pid_t target);
+void scheduler_tick(void);
+void scheduler_block_for_mail(struct pcb_header *pcb, size_t timeout, pid_t yield_target);
#endif