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

#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
int main(void)
{
int pid_1, pid_2;

printf ("ppid_1=%d.\n", getpid());

{
pid_1 = fork();
if (pid_1 == 0) printf("pid_1=%d.\n", getpid());
} 

printf ("ppid_2=%d.\n", getpid());

{
pid_2 = fork();
if (pid_2 == 0) printf("pid_2=%d.\n", getpid());
}

return 0;
}

2

Пользуйтесь тэгами (code, в данном случае), правильно выбирайте раздел для создания темы.

Был, был и весь вышел...

3

посмотрите вниматель, какие пиды он печатает.... их всего 3...

95% процентов проблем находятся между клавиатурой и стулом.