diff options
Diffstat (limited to 'include/apos')
| -rw-r--r-- | include/apos/syscalls.h | 3 | ||||
| -rw-r--r-- | include/apos/uapi.h | 15 |
2 files changed, 18 insertions, 0 deletions
diff --git a/include/apos/syscalls.h b/include/apos/syscalls.h index 5a3f2eb..a5b7e18 100644 --- a/include/apos/syscalls.h +++ b/include/apos/syscalls.h @@ -95,6 +95,9 @@ enum { /** Execute new binary in process space. */ SYS_EXEC, + /** Execute new binary in new process space. */ + SYS_SPAWN, + /** Kill thread. */ SYS_KILL, diff --git a/include/apos/uapi.h b/include/apos/uapi.h index cca728b..02e8816 100644 --- a/include/apos/uapi.h +++ b/include/apos/uapi.h @@ -535,6 +535,21 @@ SYSCALL_DECLARE0(fork); SYSCALL_DECLARE2(exec, bin, interp); /** + * Spawn binary syscall. Try to prefer over unixy fork/exec. + * + * Executes a new binary in new process space. + * + * @param bin Address of binary. + * @param interp Optional address of interpreter. + * @param c Unused. + * @param d Unused. + * @param e Unused. + * @return \ref OK and 0. + * \todo Check other return codes. + */ +SYSCALL_DECLARE2(spawn, bin, interp); + +/** * Kill syscall. * * @param tid Thread ID to kill. 0 if self. |
