This far, everything should be clear. At least one parent process creates
a child process. In real life, a child process looks something like this:

Per definition, a child process differs in some points from the parent processes. The details are explained below:

* The child process shall have a unique process ID.

This can be accomplished by giving the child process its own name, e.g. if
your name is Sepp, don't call your child process Sepp too.

* The child process ID also shall not match any active process group
ID.

Don't call it like any group you know, e.g. colleagues, neighbors, ...

* The child process shall have a different parent process ID, which
shall be the process ID of the calling process.

This one translates to the surname and usually can be realized easily.

* The child process shall have its own copy of the parent's file
descriptors. Each of the child's file descriptors shall refer to
the same open file description with the corresponding file descrip-
tor of the parent.

Give your child process a separate room in your house/flat/whatever but make
sure that its newly created room is accessible from your own rooms.

* The child process shall have its own copy of the parent's message
catalog descriptors.

Teach him/her your language. This may take a while but is usually very
effective later on.

* The time left until an alarm clock signal shall be reset to zero,
and the alarm, if any, shall be canceled; see alarm() .