Stefan,
Com o fork, o processo que está rodando, gera um outro processo identico a ele(chamamos de processo filho), que copia os valores das instancias no momento em que foi criado, e executa a partir do ponto do fork.
Outro detalhe é que a função fork retorna um valor diferente de 0 para o processo pai, e 0 para o processo criado a partir dele, o processo filho.
Então para ver o resultado dessa questão, vou tentar analisar passo-a-passo para ficar claro:
Começa a rodar o main, temos 1 processo(vou chamar de P1)
1) Ele faz x(P1)=0
2) Ele faz o fork, gerando um subprocesso(vou chamar esse subprocesso de P2)
No caso P2 copia o valor de x, logo, x(P2) = 0
3) O processo P1 entra no if, faz x++, ficando x(P1) = 1 e entra no wait, que faz com que ele fique em estado bloqueado até que o seu subprocesso termine.
OBS: que fique claro que ao fazer o fork, não dá para garantir qual dos processos vai executar primeiro, se é o P1 ou P2. Outra coisa que pode acontecer é que o processador pare um deles no meio e continue o outro, no caso, quando P1 ficar em estado bloqueado, isso não vai mais ocorrer, e ele só voltará a rodar após o termino do P2
4) O processo P2 continua, fazendo x++, ficando x(P2) = 1
5) O processo P2 faz o fork, criando um novo subprocesso P3; P3 recebe o valor da instancia do x do P2, logo x(P3) = 1
6) O processo P2 entra no else, e fica em estado bloqueado esperando P3 terminar
OBS: a mesma coisa que eu falei antes é válida aqui
7) O processo P3 entra no if, faz x++, logo x(P3) = 2
8) O processo P3 faz x++, logo, x(P3) = 3
9) O processo P3 IMPRIME 3
10) O processo P2 continua, fazendo x++, logo x(P2) = 2
11) O processo P2 IMPRIME 2
12) O processo P1 continua, fazendo x++, logo x(P1) = 2
13) O processo P1 executa o fork, cria um novo subprocesso P4, P4 recebe o x de P1, logo, x(P4) = 2
14) O processo P1 entra no else e fica bloqueado
15) O processo P4 entra no if, fazendo x++, logo, x(P4) = 3
16) O processo P4 faz x++, logo, x(P4) = 4
17) O processo P4 IMPRIME 4
18) O processo P1 continua, fazendo x++, logo, x(P1) = 3
19) O processo P1 IMPRIME 3
logo o resultado é:
3
2
4
3