abort(以异常方式结束进程)
#include <stdlib.h> void abort(void);
assert(若测试的条件不成立则终止进程)
#include <assert.h> void assert(scalar expression);
atexit(设置程序正常结束前调用的函数)
#include <stdlib.h> int atexit(void (*function)(void));
execl(执行文件)
#include <unistd.h> int execl(const char *path, const char *arg, ... /* (char *) NULL */);
execle(执行文件)
#include <unistd.h> int execle(const char *path, const char *arg, ... /*, (char *) NULL, char * const envp[] */);
execlp(从path环境变量中查找文件并执行)
#include <unistd.h> int execlp(const char *file, const char *arg, ... /* (char *) NULL */);
execv(执行文件)
#include <unistd.h> int execv(const char *path, char *const argv[]);
execve(执行文件)
#include <unistd.h> int execve(const char *filename, char *const argv[], char *const envp[]);
execvp(执行文件)
#include <unistd.h> int execvp(const char *file, char *const argv[]);
execvpe(执行文件)
#include <unistd.h> int execvpe(const char *file, char *const argv[], char *const envp[]);
exit(正常结束进程)
#include <stdlib.h> void exit(int status);
_Exit(结束进程执行)
#include <unistd.h> void _Exit(int status);
_exit(结束进程执行)
#include <unistd.h> void _exit(int status);
fork(建立一个新的进程)
#include <sys/types.h> #include <unistd.h> pid_t fork(void);
getpgid(取得进程组识别码)
#include <sys/types.h> #include <unistd.h> pid_t getpgid(pid_t pid);
getpgrp(取得进程组识别码)
#include <sys/types.h> #include <unistd.h> pid_t getpgrp(void); /* POSIX.1 version */ pid_t getpgrp(pid_t pid); /* BSD version */
getpid(取得进程识别码)
#include <sys/types.h> #include <unistd.h> pid_t getpid(void);
getppid(取得父进程的进程识别码)
#include <sys/types.h> #include <unistd.h> pid_t getppid(void);
getpriority(取得程序进程执行优先权)
#include <sys/time.h> #include <sys/resource.h> int getpriority(int which, id_t who);
longjmp(跳转到原先setjmp保存的堆栈环境)
#include <setjmp.h> void longjmp(jmp_buf env, int val);
nice(改变进程优先顺序)
#include <unistd.h> int nice(int incr);
on_exit(设置程序正常结束前调用的函数)
#include <stdlib.h> int on_exit(void (*function)(int , void *), void *arg);
ptrace(进程追踪)
#include <sys/ptrace.h> long ptrace(enum __ptrace_request request, pid_t pid, void *addr, void *data);
setjmp(保存目前堆栈环境)
#include <setjmp.h> int setjmp(jmp_buf env);
setpgid(设置进程组识别码)
#include <sys/types.h> #include <unistd.h> int setpgid(pid_t pid, pid_t pgid);
setpgrp(设置进程组识别码)
#include <sys/types.h> #include <unistd.h> int setpgrp(void); /* System V version */ int setpgrp(pid_t pid, pid_t pgid); /* BSD version */
setpriority(设置程序进程执行优先权)
#include <sys/time.h> #include <sys/resource.h> int setpriority(int which, id_t who, int prio);
siglongjmp(跳转到原先sigsetjmp保存的堆栈环境)
#include <setjmp.h> void siglongjmp(sigjmp_buf env, int val);
sigsetjmp(保存目前堆栈环境)
#include <setjmp.h> int sigsetjmp(sigjmp_buf env, int savesigs);
system(执行shell命令)
#include <stdlib.h> int system(const char *command);
wait(等待子进程中断或结束)
#include <sys/wait.h> pid_t wait(int *stat_loc);
waitpid(等待子进程中断或结束)
#include <sys/wait.h> pid_t waitpid(pid_t pid, int *stat_loc, int options);