Parent Process - Orphan Processes

Orphan Processes

Orphan processes is kind of the opposite situation of zombie processes, since it refers to the case where a parent process terminates before its child processes, in which case these children are said to become "orphaned".

Unlike the assynchronous child-to-parent notification that happens when a child process terminates (via the SIGCHLD signal), child processes are not notified immediately when their parent finishes. Instead, the system simply redefines the "parent-pid" field in the child process's data to be the process that is the "ancestor" of every other process in the system, whose pid generally has the value 1 (one), and whose name is traditionally "init". It is thus said that "init 'adopts' every orphan process on the system".

A somewhat common assumption by programmers new to UNIX is that the child processes of a terminating process will be adopted this process's immediate parent process (hence those child processes' "grandparent"). Such assumption is incorrect—unless, of course, that "grandparent" is init itself.

Read more about this topic:  Parent Process

Famous quotes containing the words orphan and/or processes:

    For the LORD your God is God of gods and Lord of lords, the great God, mighty and awesome, who is not partial and takes no bribe, who executes justice for the orphan and the widow, and who loves the strangers, providing them food and clothing.
    Bible: Hebrew, Deuteronomy 10:17,18.

    Our bodies are shaped to bear children, and our lives are a working out of the processes of creation. All our ambitions and intelligence are beside that great elemental point.
    Phyllis McGinley (1905–1978)