函数原型:pid_t fork(void);
返回值:
成功:返回子进程id给附近父进程,返回0给子进程
失败:返回-1,并且设置错误号,同时子进程不会被创建
注意:创建出来的子进程拷贝几乎所有父进程的内容(进程id除外,一定不会拷贝),但是从fork函数之后才开始运行程序,并且规定父进程回收子进程产生的资源,如果父进程先于子进程结束,则子进程变成孤儿进程,将被init进程收养。
正常运行下:
使子进程先结束,查看两个进程中子进程、父进程id号相同
当父进程先结束,子进程则被收养,如下子进程中的父进程id号改变
查看父进程的父进程id号,发现此id为终端的命令解释器bash的id号,说明进程由终端创建