Untitled

 avatar
unknown
plain_text
8 months ago
644 B
3
Indexable
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>

int run(int i){
    if(i == 0){
        printf("Parent Instance Started\n");
    } else {
        printf("Child Instance %d Started\n", i);
    }
    
    return 0;
}

int main(int argc, char* argv[]) {
    int N = atoi(argv[1]);

    run(0);

    for (int i = 1; i <= N; i++) {
        pid_t pid = fork();
        int status;

        if (pid == 0) {
            run(i);
            return 0;
        } else if (pid > 0) {
            wait(&status);
        } else {
            printf("fork failed\n");
            return 1;
        }
    }

    return 0;
}
Editor is loading...
Leave a Comment