who create new process ? fork

Process IDs Each process in a Linux system is identified by its unique process ID, sometimes referred to as pid.

The fork() system call will spawn a new child process which is an identical process to the parent except that has a new system process ID.



The function clone() creates a new child process which shares memory, file descriptors and signal handlers with the parent. It implements threads and thus launches a function as a child. The child terminates when the parent terminates. 
See the YoLinux POSIX threads tutorial

Man Pages:

  •   clone – create a child process


source: yolinux.com/TUTORIALS/ForkExecProcesses.html