Quantos processos são bifurcados aqui

Eu sei que pode ser uma pergunta estúpida, mas alguém poderia me ajudar a entender o comportamento do seguinte trecho de código?

//label 0
int main(){
  fork();//label 1
  fork();//label 2
  fork();//label 3
  return 0;
}

Tanto quanto eu entendo, a árvore do processo é assim

              [0]
          /    |    \
        [1]   [2]   [3]
       /  \    |
      [2] [3] [3]
       |
      [3]

Estou certo? Nesse caso, estou confuso sobre o motivo pelo qual o segundo garfo não gera um processo correspondente ao garfo do rótulo 1 e o terceiro garfo não gera mais nenhum processo. Quero dizer, um processo filho é a cópia exata do pai (pelo menos no código), portanto, ele deve executar o código de seu pai em sua totalidade. Alguém pode me ajudar com essa confusão ...

questionAnswers(4)

yourAnswerToTheQuestion