Как мне создать несколько зомби в ядре Linux?

Я пишу проект для класса, который находит зомби и пожинает их в ядре Linux.

Я нашел код, который создаст одного зомби, который будет получен после wait(), но моя программа должна пожинать много, порядка 1000.

Я очень новичок в манипулировании ядром / многопоточности, и ресурсы, которые я нашел в Интернете по работе с зомби, либо слишком технические, либо неоднозначные.

Это код, который я использую:

      pid_t child_pid;

      child_pid = fork ();
      if (child_pid > 0) {
          sleep (60);
      } else {
          exit (0);
      }

Еще раз, мой вопрос: как мне создать несколько зомби, чтобы моя программа пожинала плоды?

Большое спасибо

1 ответ

Решение

Зомби - это не более чем один завершенный процесс, у которого есть родитель, который не прочитал его статус выхода (в двух словах: родитель не вызвал wait() после выхода ребенка) и держать память и ресурсы занятыми.

Чтобы достичь того, что вам нужно, просто разветвите множество процессов (например, используйте цикл) и никогда не вызывайте wait()

Другие вопросы по тегам