From cc23ea5a4b38807e79aceb23e6f43e965926618f Mon Sep 17 00:00:00 2001 From: Jon Santmyer Date: Fri, 9 Oct 2026 10:24:41 -0400 Subject: add basic scheduler logic. rename init rootdir indexes --- api/syscall.h | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'api/syscall.h') diff --git a/api/syscall.h b/api/syscall.h index 3f9d115..88aad81 100644 --- a/api/syscall.h +++ b/api/syscall.h @@ -46,13 +46,19 @@ enum SYSCALL_UNTYPED_SIZE, SYSCALL_UNTYPED_SPLIT, SYSCALL_UNTYPED_MERGE, - SYSCALL_UNTYPED_RETYPE, + SYSCALL_UNTYPED_RETYPE_OBJDIR, + SYSCALL_UNTYPED_RETYPE_PAGEDIR, + SYSCALL_UNTYPED_RETYPE_SHMEMORY, + SYSCALL_UNTYPED_RETYPE_PCB, + SYSCALL_UNTYPED_RETYPE_MESSAGE, + _SYSCALL_UNTYPED_ARCH_BEGIN }; #define SYSCALL_PERM_UNTYPED_ADDRESS JOVE_PERM_READ #define SYSCALL_PERM_UNTYPED_SIZE JOVE_PERM_READ #define SYSCALL_PERM_UNTYPED_SPLIT (JOVE_PERM_WRITE | JOVE_PERM_MUTATE) #define SYSCALL_PERM_UNTYPED_MERGE (JOVE_PERM_WRITE | JOVE_PERM_MUTATE) +#define SYSCALL_PERM_UNTYPED_RETYPE (JOVE_PERM_WRITE | JOVE_PERM_MUTATE) struct syscall_untyped_split { @@ -175,12 +181,18 @@ enum _SYSCALL_PCB_NONE = 0, SYSCALL_PCB_YIELD, SYSCALL_PCB_SEND, - SYSCALL_PCB_RECV + SYSCALL_PCB_RECV, + SYSCALL_PCB_SET_RDIR, + SYSCALL_PCB_SET_PDIR, + SYSCALL_PCB_SET_READY, }; #define SYSCALL_PERM_PCB_YIELD (JOVE_PERM_WRITE) -#define SYSCALL_PERM_PCB_SEND (JOVE_PERM_MUTATE) -#define SYSCALL_PERM_PCB_RECV (JOVE_PERM_MUTATE) +#define SYSCALL_PERM_PCB_SEND (JOVE_PERM_WRITE) +#define SYSCALL_PERM_PCB_RECV (JOVE_PERM_WRITE) +#define SYSCALL_PERM_PCB_SET_RDIR (JOVE_PERM_WRITE | JOVE_PERM_MUTATE) +#define SYSCALL_PERM_PCB_SET_PDIR (JOVE_PERM_WRITE | JOVE_PERM_MUTATE) +#define SYSCALL_PERM_PCB_SET_READY (JOVE_PERM_WRITE | JOVE_PERM_MUTATE) #define SYSCALL_PERM_PCB_SEND_TGT (JOVE_PERM_MUTATE) #define SYSCALL_PERM_PCB_RECV_DST (JOVE_PERM_MUTATE) -- cgit v1.2.3