Also habe ich Code hier, und ich erwartete, dass es strikt ls -l 5 mal laufen, aber es scheint viel öfter laufen. Was mache ich hier falsch? Ich möchte ls 5 mal laufen, also gabele ich 5 mal. Vielleicht verstehe ich das Konzept des Wartens nicht richtig? Ich habe eine Menge Tutorials durchgelesen, und keiner scheint mehrere Prozesse mit fork zu bewältigen.Warum verzweifle ich hier mehr als 5 mal?
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <unistd.h>
int main()
{
pid_t pidChilds[5];
int i =0;
for(i = 0; i<5; i++)
{
pid_t cpid = fork();
if(cpid<0)
printf("\n FORKED FAILED");
if(cpid==0)
printf("FORK SUCCESSFUL");
pidChilds[i]=cpid;
}
}
Tipp: Wenn cpid == 0, glaubst du, dass du sonst noch etwas vergessen hast? –
@NicholasWilson Nicht, dass ich mir vorstellen kann. :(Was mache ich falsch? – NoNameY0
Forkbomb, ftw!: D – Carsten