Сколько процессов создает эта программа, включая исходный родительский процесс?

Я пытаюсь выяснить, сколько процессов создает эта программа, включая начальный родительский процесс. Правильный ответ должен быть 9, но я неЯ не понимаю, почему ответ 9. Как создаются эти 9 процессов? Заранее спасибо!

#include 
#include 
…
int main()
{
  pid_t john;
  john = fork( );

  if (john == 0) {
      fork( ); fork( ); fork( );
  }
/* Consume resources of another process */
/* This does NOT create a new process. */
Consume( ); Consume( );

   return 0;
}

Ответы на вопрос(4)

Ваш ответ на вопрос