Почему создание процесса является двухэтапным процессом (fork-exec)?

313
ddmichael

Я изучаю книгу Таненбаума «Современные операционные системы», и он объясняет, что:

Причина этого двухэтапного процесса состоит в том, чтобы позволить дочернему элементу манипулировать его файловыми дескрипторами после разветвления, но до выполнения, чтобы выполнить перенаправление стандартного ввода, стандартного вывода и стандартной ошибки.

Не могли бы вы более подробно остановиться на этом?

0
Он упоминает ЗАКРЫТЬ НА EXEC? Существуют атрибуты дескриптора файла, которые определяют, сохраняется ли дескриптор файла в exec. Поэтому, если дескриптор закроется, вам, возможно, потребуется что-то с ним сделать, например, вызвать ioctl (), fcntl () для изменения атрибутов. jim mcnamara 9 лет назад 0
Нет, боюсь, он не дает больше информации об этом. ddmichael 9 лет назад 0

0 ответов на вопрос