returns the process ID of the calling process.
Though the ID is guaranteed to be unique, it should
be used for constructing temporary file names; see
returns the process ID of the parent of the calling process.
These functions are always successful, and no return value is
reserved to indicate an error.