Sobes.tech
Junior — Middle

Ποιες καταστάσεις μπορούν να οδηγήσουν στην εμφάνιση ενός zombie-διαδικασίας στο σύστημα;

sobes.tech AI

Απάντηση από AI

Ένα ζόμπι διαδικασία είναι μια διαδικασία που έχει τερματίσει, αλλά η γονική διαδικασία της δεν έχει διαβάσει ακόμα την κατάσταση τερματισμού της (δεν έχει καλέσει wait ή παρόμοια).

Οι κύριες καταστάσεις που οδηγούν στην εμφάνιση ζόμπι:

  • Η γονική διαδικασία δεν χειρίζεται το σήμα SIGCHLD ή δεν καλεί wait/waitpid για τις παιδικές διαδικασίες.
  • Η γονική διαδικασία έχει κολλήσει ή λειτουργεί λανθασμένα, χωρίς να απελευθερώνει τους πόρους των τερματισμένων παιδικών διαδικασιών.
  • Σφάλματα στη λογική διαχείρισης διαδικασιών, όταν οι παιδικές διαδικασίες τερματίζουν και η γονική δεν ενημερώνεται.

Οι ζόμπι διαδικασίες καταλαμβάνουν εγγραφές στον πίνακα διαδικασιών, αλλά δεν καταναλώνουν CPU ή μνήμη. Η συσσώρευσή τους μπορεί να οδηγήσει σε εξάντληση των πόρων του συστήματος.