Что такое системный вызов fork в операционных системах семейства Unix?

fork создаёт дочерний процесс, продолжающий выполнение с той же точки: родитель получает PID ребёнка, ребёнок — 0, при ошибке возвращается −1.

Короткий ответ

Что ответить на собеседовании

fork создаёт дочерний процесс, продолжающий выполнение с той же точки: родитель получает PID ребёнка, ребёнок — 0, при ошибке возвращается −1.

Подробный разбор

Ответ с пояснениями

fork создаёт дочерний процесс, продолжающий выполнение с той же точки: родитель получает PID ребёнка, ребёнок — 0, при ошибке возвращается −1.

Адресное пространство логически копируется; Linux обычно откладывает физическое копирование страниц через copy-on-write. Дескрипторы наследуются и могут ссылаться на общие open-file descriptions, включая позицию файла. В многопоточном процессе у ребёнка остаётся только вызывающий поток, поэтому до exec особенно опасны унаследованные locks и небезопасные библиотечные операции. Родитель должен обработать завершение ребёнка через wait/waitpid, иначе завершённый процесс может оставаться zombie.

Источник: man7.org.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее