Processar árvore usando fork () [closed]

0

Tenho a tarefa de criar esta árvore de processos em C usando fork , if e else :

|_____1___
|___2__   |
|_4_   |  |_3_
|   |  |  |   |

Ou como pstree como desenho:

p(0)─┬─p(1)───p(3)
     ├─p(2)
     └─p(4)

Este código está correto?

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int main() {

    if(fork()){
        // 1
        if(fork()){
            // 2
            if(fork()){
                // 4
            }
            else{}
        }
        else{}
    }
    else{
        if(fork()){
            // 3}
        else{}
    }

    pause();
    return 0;
}
    
por Altair64 12.01.2016 / 00:07

1 resposta

1

OK, entendi sua pergunta agora. Sua resposta está correta. Tudo o que vou dizer é que você pode apenas fazer

fork()

para o% final fork s em vez de

if (fork()) {}
else {}
    
por 12.01.2016 / 01:51