fork函数

Linux系统下可以使用fork()函数创建一个子进程,其函数原型如下:

#include<usistd.h>
pid_t fork(void);

fork()函数不需要参数,返回值是一个进程标识符(PID)。对于返回值,有一下3种情况:

(1)对于父进程,fork()函数返回新创建的子进程的ID

(2)对于子进程,fork()函数返回0

(3)如果创建失败,fork()函数返回-1

fork()函数会创建一个新的进程,并从内核中为此进程分配一个新的可用的进程标识符(PID),之后为这个新进程分配进程空间,并将

父进程空间中的内容复制到子进程的进程空间中,包括父进程的数据段和堆栈段,并且和父进程共享代码段。这时候系统中就多了进程

这个进程和父进程一抹一眼,两个进程都会接收系统的调度。并且fork()函数会返回两次,一个是在父进程中返回,一个是在子进程中返回,这两个

返回值是不一样的。

最后给出子进程继承资源的情况

原文地址:https://www.cnblogs.com/tijie/p/10581360.html