Junior — Middle
Ποιες καταστάσεις μπορούν να οδηγήσουν στην εμφάνιση ενός zombie-διαδικασίας στο σύστημα;
sobes.tech AI
Απάντηση από AI
Ένα ζόμπι διαδικασία είναι μια διαδικασία που έχει τερματίσει, αλλά η γονική διαδικασία της δεν έχει διαβάσει ακόμα την κατάσταση τερματισμού της (δεν έχει καλέσει wait ή παρόμοια).
Οι κύριες καταστάσεις που οδηγούν στην εμφάνιση ζόμπι:
- Η γονική διαδικασία δεν χειρίζεται το σήμα SIGCHLD ή δεν καλεί wait/waitpid για τις παιδικές διαδικασίες.
- Η γονική διαδικασία έχει κολλήσει ή λειτουργεί λανθασμένα, χωρίς να απελευθερώνει τους πόρους των τερματισμένων παιδικών διαδικασιών.
- Σφάλματα στη λογική διαχείρισης διαδικασιών, όταν οι παιδικές διαδικασίες τερματίζουν και η γονική δεν ενημερώνεται.
Οι ζόμπι διαδικασίες καταλαμβάνουν εγγραφές στον πίνακα διαδικασιών, αλλά δεν καταναλώνουν CPU ή μνήμη. Η συσσώρευσή τους μπορεί να οδηγήσει σε εξάντληση των πόρων του συστήματος.