diff options
author | Jon Santmyer <jon@jonsantmyer.com> | 2025-09-18 13:52:58 -0400 |
---|---|---|
committer | Jon Santmyer <jon@jonsantmyer.com> | 2025-09-18 13:52:58 -0400 |
commit | ddc4fbc15223e362896a9f42beca73f05f48e664 (patch) | |
tree | 30f8ffc989bc66d9d9e67c7321b3d7a9c46dc130 /include/api/syscall.h | |
parent | cfc793e204ba63d281e778a36992b8c86dd0ad88 (diff) | |
download | jove-kernel-ddc4fbc15223e362896a9f42beca73f05f48e664.tar.gz jove-kernel-ddc4fbc15223e362896a9f42beca73f05f48e664.tar.bz2 jove-kernel-ddc4fbc15223e362896a9f42beca73f05f48e664.zip |
move usermode-critical info to include/api
Diffstat (limited to 'include/api/syscall.h')
-rw-r--r-- | include/api/syscall.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/include/api/syscall.h b/include/api/syscall.h new file mode 100644 index 0000000..3ce5886 --- /dev/null +++ b/include/api/syscall.h @@ -0,0 +1,45 @@ +#ifndef _JOVE_API_SYSCALL_H +#define _JOVE_API_SYSCALL_H 1 + +enum +{ + SYSCALL_NONE = 0, + SYSCALL_INVOKE, + SYSCALL_SEND, + SYSCALL_RECV, + + SYSCALL_DEBUG_PUTC +}; + +/* Generic payload of SYSCALL_INVOKE: + * [size_t n][ n bytes ][ uint8_t ][ payload ] + * target entry funcid + * */ + +/**@ENUM objdir invokes*/ +enum +{ + /*[target path][u8 funcid][u8 memb]*/ + INVOKE_OBJDIR_GETMEMB, + /*[target path][u8 funcid]*/ + INVOKE_OBJDIR_LASTMEMB, + /*[target path][u8 funcid][u8 memb]*/ + INVOKE_OBJDIR_MOVE +}; +/**@ENUM untyped invokes*/ +enum +{ + /*[target path][u8 funcid][size_t ret]*/ + INVOKE_UNTYPED_SIZE = 0, + /*[target path][u8 funcid][dest path][dest bytes]*/ + INVOKE_UNTYPED_SPLIT, + /*[first path][u8 funcid][second path]*/ + INVOKE_UNTYPED_MERGE, + /*[target path][u8 funcid][size_t ret]*/ + INVOKE_UNTYPED_ALIGNMENT, + /*[target path][u8 funcid][u16 type]*/ + INVOKE_UNTYPED_RETYPE, +}; + + +#endif |