When a child terminates either normally or not in Linux, a system routine executes to handle the process termination.
This system routine arranges for a signal to be sent to the parent process.
This child termination signal is asynchronous to the parent's execution.