Quelle est la différence entre un Processus de pid, ppid, uid uid effectif, gid et egid?

Contexte: je suis l'actuel Ruby ID de processus.

Process.pid  #=> 95291

Process.ppid #=> 95201

Process.uid  #=> 501

Process.gid  #=> 20

Process.euid #=> 501

Process.egid #=> 20