Вопросы к Поиску с Алисой
Основное различие между вызовами fork и exec в UNIX заключается в том, как они создают новые процессы. testbook.com
fork создаёт новый процесс, сохраняя при этом оригинальный. testbook.com После выполнения вызова fork в системе сосуществуют два процесса: основной (родительский) и порождённый (потомок). www.opennet.ru testbook.com При этом состояние родительского процесса, включая открытые файлы, адресное пространство и переменные, копируется в потомок. testbook.com Любые изменения в родительском процессе не влияют на потомок и наоборот. testbook.com
exec создаёт новый процесс, но не сохраняет оригинальный. testbook.com После выполнения вызова exec в системе остаётся только порождённый процесс, а оригинальный завершается. testbook.com Потомок заменяет сегмент текста, адресное пространство и сегмент данных родительского процесса. testbook.com
Таким образом, fork позволяет создавать идентичные процессы, а exec — запускать новые программы, заменяя существующие. www.opennet.ru stackoverflow.com