Доброго времени суток! Разбираюсь с созданием процессов в с++. Порождаю процесс и вывожу его pid и pid его родителя. Иногда выводит pid основного процесса, а иногда - pid процесса init. Хотел спросить, с чем это связано и что я не так делаю
switch(brown_process)//
{
case -1: //обрабатываем ошибку
cerr << "Ошибка запуска коричневого процесса!"<<endl;
return -1; //завершаем программу
break;
case 0:
cerr<<"Коричневый процесс работает! Его id: "<<getpid()<<endl;
cerr<<". id его родителя: "<<getppid()<<endl;
exit(0);
break;
default :
cerr<<"Продолжение работы"<<endl;
}