Только один вопрос, когда я fork(), я создал родительский и дочерний процесс. Можно ли завершить мой родитель, пока мой ребенок все еще работает?Нужно подробно объяснять fork и exec
basic на этой диаграмме? Differences between fork and exec
if(!fork())
{
//child
while(1);
}
else
{
//parent
exit();
}
Другой сценарий - это если мой ребенок прекратил действие. мой родитель может получить возвращаемое значение из основного? если да, как я могу получить значение?
В чем разница между exec и execlp?
Наконец, я понимаю, что когда вы выполняете команду, вы перезаписываете память (кучу, стек, текст, данные). В принципе, вызовите новый .exe. Но под ПХД? только PID, PPID остаются, пока состояние и sp все перезаписываются?
Рассмотрите возможность предварительного поиска. И, предполагая, что вы находитесь в системе на основе unix, подумайте о том, чтобы прочитать страницы 'man' – rliu