TGViewer
DevOps // Human Help DevOps // Human Help @devopshh · 1.04K subscribers
Post #20 444
⌨️ Как они размножаются? fork()/clone() exec()

#process_management

Итак, мы погружаемся в жизнь процессов всё глубже и глубже, и настало время узнать, откуда берутся новые процессы. Чтобы создать новый процесс, существующий процесс использует системный вызов fork() (технически в Linux используется вызов clone(), но для удобства повествования пока пропустим это). В результате выполнения fork() мы получаем два почти идентичных процесса, с одним важным исключением: системный вызов fork() возвращает два разных значения. В дочернем процессе это значение равно 0 (всегда помним, что согласно Linux-нумерологии 0 обозначает успех), а в родительском процессе возвращается идентификатор PID процесса-потомка.

Поскольку в остальном процессы идентичны, они должны проверить это значение, чтобы определить, кто из них родитель, а кто потомок, и, исходя из этой информации, планировать дальнейшие действия. В жизни родительского процесса мало что изменится, кроме новой ответственности за процесс-потомка, тогда как дочерний процесс изменится кардинально, выполнив один из вызовов exec (например, execl, execp, execv). Все вызовы этого семейства заменяют текущую программу в процессе, и вся память, связанная с текущим процессом, сбрасывается и перенастраивается в соответствии с требованиями нового исполняемого файла. И вот перед нами свежерожденный потомок, скорее всего он будет абсолютно не походить на своего предка, но кое-что он от него всё-таки унаследует, но об этом чуть позже и чуть ниже.
  • 🔥 1
More from @devopshh
  1. Jun 12, 2026Спрашивается, что должно случиться, чтобы этот канал прервал молчание? Да в целом ничего.…
  2. Feb 11, 2026document post
  3. Feb 11, 2026Всем привет, продолжаем наш экскурс в вопросы с технических собеседований. Загрузка Linux,…
  4. Feb 2, 2026document post
  5. Feb 2, 2026⌨️ Load Average (full + PDF) #Linux Всем привет, я возвращаюсь. Находился в некотором твор…
  6. Oct 27, 2025⌨️ Софт скилы на собеседовании. #рекрутинг #собеседования Почему «говорить правду» на собе…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →