通过fork()系统调用,可以创建一个和当前进程映像一样的进程:
#include
#include
pid_t fork(void);
当fork()调用成功时,会创建一个新的进程,它几乎与调用fork()的进程完全相同。
这两个进程都会继续运行,调用者进程从fork()返回后,还是照常运行。
最常见的fork()用法是创建一个新的进程,载入新的二进制映像------类似shell为用
户创建一个新进程,或者一个进程创建了一个辅助进程。首先,该进程创建了新的
进程,而这个新建的子进程会执行一个新的二进制可执行文件的映像。这种“派生/
执行“的方式很常见,而且非常简单。下面的例子创建了一个新的进程来运行/usr/bin/who:
编译:
运行: