Sobes.tech
Junior — Middle

Əməliyyat sistemində zombie prosesini necə sona çatdırmaq və ya zorla dayandırmaq olar?

sobes.tech Süni İntellekt

AI-dan cavab

Zombi proses — tamamlanmış prosesdir, lakin onun valideyi hələ oxunmayıb (wait çağırmayıb). Sistemdə o, proseslər cədvəlində qeydiyyatda olur, lakin CPU resurslarını istifadə etmir.

Zombi prosesi birbaşa zorla sonlandırıla bilməz, çünki artıq tamamlanıb. Zombidən qurtulmaq üçün:

  • Wait çağırmamış valideyi sonlandırmaq və ya yenidən başlatmaq. Bu zaman init (PID 1) yeni valide olur və avtomatik olaraq wait çağırır, zombini təmizləyir.
  • Valideyə SIGCHLD siqnalı göndərmək, onun uşaqların tamamlanma statusunu emal etməsi üçün.

Valideyə siqnal göndərmək üçün nümunə əmr:

kill -s SIGCHLD <PID_valide>

Əgər valide cavab verməzsə, onu sonlandırmaq olar:

kill -9 <PID_valide>

Bundan sonra, init zombi prosesini alıb, onu təmizləyəcək.