system() is equivalent to fork() + exec() + wait(); this means when a process run system() function it creates a new process and waits the end of this process. The new process executes the command in it's own environment, when it has finished the caller receives the signal child.
For further information man exec man system
"exec replaces the current process image with a new process image", this means when it exits the caller exits too as the caller has become the new process.