fork and exec
Child process may choose to execute some other program than the parent by using exec call.
Exec overlays a new program on the existing process.
Child will not return to the old program unless exec fails. This is an important point to remember.
Why do we need to separate fork and exec? Why can’t we have a single call that fork a new program?