Eu testei isso em 2 configurações de virtualbox, ambas usando o OS X como host, e atribui apenas 1 CPU para cada cliente.
1 Ubuntu 14.04.2
Nesta configuração, no ambiente X window, o comportamento corresponde ao OP
john@U64D:~$ ./a
I'm the parent, my PID is 2682, my parent is process 2632
This sentence has been printed by process: 2682 my parent is process 2632
john@U64D:~$ This sentence has been printed by process: 2683 my parent is process 1673
O processo pai 1673 permanecerá o mesmo até eu fazer logout e login novamente
john@U64D:~$ ./a
I'm the parent, my PID is 3787, my parent is process 3740
This sentence has been printed by process: 3787 my parent is process 3740
john@U64D:~$ This sentence has been printed by process: 3788 my parent is process 3107
./a
I'm the parent, my PID is 3790, my parent is process 3740
This sentence has been printed by process: 3790 my parent is process 3740
john@U64D:~$ This sentence has been printed by process: 3791 my parent is process 3107
3107 é init --user
john@U64D:~$ ps -ef|grep 3107
john 3107 2911 0 15:07 ? 00:00:00 init --user
No entanto, o resultado corresponderá à resposta do Barmar em ambientes não X (por exemplo, tty1).
2 Debian 7.8
Esta configuração correspondeu à resposta do Barmar, tanto para o ambiente X como para o não-X.
john @ debian: ~ $ ./a
I'm the parent, my PID is 3455, my parent is process 3406
This sentence has been printed by process: 3455 my parent is process 3406
john@debian:~$ This sentence has been printed by process: 3456 my parent is process 1
Conclusão
A observação do OP é resultado do Ubuntu usando o init da sessão para o ambiente X padrão. Informações detalhadas sobre o init da sessão podem ser encontradas aqui .