Module sys/process

sys/process

Child process management.

Provides cross-platform child process spawning, waiting, and signal delivery. All async operations return IOFuture which resolves to:

  • Positive value: success (pid for spawn, status for waitpid)
  • Negative value: -errno on failure

argv/envp are NULL-terminated arrays of C strings.

Functions

spawn function
fn(file : *(u8), argv : *(Option(*(u8))), envp : Option(*(Option(*(u8)))), stdin_fd : i32, stdout_fd : i32, stderr_fd : i32) -> IOFuture

Parameters

NameTypeNotes
file*(u8)
argv*(Option(*(u8)))
envpOption(*(Option(*(u8))))
stdin_fdi32
stdout_fdi32
stderr_fdi32

Returns: IOFuture

waitpid function
fn(pid : i32, options : i32) -> IOFuture

Parameters

NameTypeNotes
pidi32
optionsi32

Returns: IOFuture

kill function
fn(pid : i32, signum : i32) -> i32

Parameters

NameTypeNotes
pidi32
signumi32

Returns: i32

exit_status function
fn(status : i32) -> i32

Parameters

NameTypeNotes
statusi32

Returns: i32

term_signal function
fn(status : i32) -> i32

Parameters

NameTypeNotes
statusi32

Returns: i32