有了 fork, execve 我们就能自由执行任何程序了,最后只缺一个销毁状态机的函数!
UNIX 的答案: _exit
void _exit(int status)
这个简单……
exit 的几种写法 (它们是
exit(0)
- stdlib.h
中声明的 libc 函数atexit
_exit(0)
- glibc 的 syscall wrapperexit_group
” 系统调用终止整个进程 (所有线程)atexit
syscall(SYS_exit, 0)
exit
” 系统调用终止当前线程atexit