在内存中创建fork和Stack

时间:2015-10-15 12:56:51

标签: unix process fork

我对此非常好奇.. 我听到有人说当调用fork()并将其值存储在数据类型为pid_t的变量p中时,如果p中的值为 -1进程无法创建 在主函数堆栈中创建0进程 在内存中分配自己的堆栈创建的1个进程 我在互联网上看不到这些。 任何人都可以帮助我 感谢

1 个答案:

答案 0 :(得分:0)

fork()通过复制当前进程创建一个新的独立进程,完全在原始进程的位置执行。返回值为-1表示无法创建新进程。

如果返回值为正,则表示此进程是原始主进程,并且该返回值是新进程'进程ID(pid)。在新进程中,fork()的返回值为0.这就是你如何在原始进程和新进程中采取不同的操作。

例如,请参阅http://linux.die.net/man/2/fork