
  /**************************************************************/
  /*                                                            */
  /*      UNIX 1 / WS 92/93       Gruppe  ux803                 */
  /*      5. Uebung - Aufgabe 3                                 */
  /*                                                            */
  /*      Vorname     Name        Matrikelnr.                   */
  /*     ---------   -------     -------------                  */
  /*      Dietmar     Dierks        125761                      */
  /*      Roman       Czyborra      127221                      */
  /*      Torsten     Buller        117894                      */
  /*      Gerasimos   Paliatsaras   140956                      */
  /*                                                            */
  /**************************************************************/

Eine Prozess-id ist eine eindeutige Identifikation eines in Ausfuehrung be-
findlichen Programmes. Die pid's werden gesetzt, wenn der Prozess im System-
aufruf fork() den Zustand "created" erreicht.
Die pid's muessen eindeutig sein, weil anhand dieser die proc table auf
die Prozesse zugreift. Wenn zwei Prozesse dieselbe pid haetten, waere nicht
mehr sicher, welcher Prozess ausgefuehrt werden wuerde. Die pid's geben auch
die Beziehungen der Prozesse untereinander an, und auch da koennte es zu Feh-
lern kommen.
Jeder Prozess mit Ausnahme von Prozess 0 wird erzeugt, wenn ein anderer Pro-
zess den Systemaufruf fork() ausfuehrt. Prozess 0 ist ein spezieller Prozess,
der beim Systemstart praktisch "von Hand" erzeugt wird. Prozess 1 ist der init-
Prozess. Somit werden erst pid's ab 2 vergeben. -1 ist im UNIX-System als Feh-
lerfall vorgesehen, d.h. z.B. fork() liefert im Fehlerfall, d.h. wenn kein
Prozess erzeugt werden konnte, eine -1 an den Vaterprozess zurueck, ansonsten
die pid des erzeugten Prozesses.
Wuerde die PID eines gerade terminierten Prozesses gleich wieder vergeben,
koeente es zu Verwechslungen kommen, wenn mehrere Prozesse auf einen
zugreifen (auf einen unerwartet terminierten Prozess warten, von ihm bestimmte
Daten erwarten etc.). Daher werden PIDs moeglichst lange nicht wieder benutzt
und sind so grosse Zahlen.

