1#ifndef _SYS_WAIT_H 2#define _SYS_WAIT_H 3 4#ifdef __cplusplus 5extern "C" { 6#endif 7 8#include <sys/types.h> 9 10#define WNOHANG 1 11#define WUNTRACED 2 12 13/* A status looks like: 14 <2 bytes info> <2 bytes code> 15 16 <code> == 0, child has exited, info is the exit value 17 <code> == 1..7e, child has exited, info is the signal number. 18 <code> == 7f, child has stopped, info was the signal number. 19 <code> == 80, there was a core dump. 20*/ 21 22#define WIFEXITED(w) (((w) & 0xff) == 0) 23#define WIFSIGNALED(w) (((w) & 0x7f) > 0 && (((w) & 0x7f) < 0x7f)) 24#define WIFSTOPPED(w) (((w) & 0xff) == 0x7f) 25#define WEXITSTATUS(w) (((w) >> 8) & 0xff) 26#define WTERMSIG(w) ((w) & 0x7f) 27#define WSTOPSIG WEXITSTATUS 28 29pid_t wait (int *); 30pid_t waitpid (pid_t, int *, int); 31 32/* Provide prototypes for most of the _<systemcall> names that are 33 provided in newlib for some compilers. */ 34pid_t _wait (int *); 35 36#ifdef __cplusplus 37}; 38#endif 39 40#endif 41