ich hab mir ein kleines Programm geschrieben, mit dem über fork() Prozesse erzeugt werden und über getpid() die Prozessnummer ausgegeben wird.
Alledings hab ich mir ein paar Tips holen müssen und verstehe es irgendwie noch nicht so.
Hier ist der Quellcode:
Code: Select all
#include <stdio.h>
int main()
{
int kind = 3;
int enkel =2;
int i,j,pid,kind_pid;
for (i=0;i<kind;i++)
{
pid = fork();
if (pid == 0)
{
kind_pid = getpid();
printf("\n PID von Kind: %d\n",kind_pid);
for (j=0;j<enkel;j++)
{
pid= fork();
if (pid == 0)
{
printf("\n PID von Enkel %d des Kindes %d\n",getpid(),kind_pid);
break; // <<<<---*****_____--------------- HIER nr1
}
}
break; // <<<<---*****_____--------------- HIER nr2
}
}
}
Meine andere Frage : wenn ich das Prg über die Bash kompiliere und ausführe: ist die Ausgabe zwar korrekt ABER die Eingabezeile taucht mitten in der Ausgabe des Programms auf -- wieso das passiert, kann ich echt nicht nachvollziehen?!?!?!
mfG
AlPhedp