Sobes.tech
Junior — Middle

Koji od signala SIGTERM ili SIGKILL može dovesti do pojave zombie procesa u sistemu?

sobes.tech АИ

Одговор од АИ

Sistem SIGTERM može dovesti do pojave zombi-procesa ako roditeljski proces ne obradi ispravno završetak deteta procesa i ne pozove wait() za oslobađanje resursa.

Sistem SIGKILL (koji u pitanju ima pravopisnu grešku kao SIGSKILL) odmah završava proces bez mogućnosti hvatanja ili obrade, ali kernel automatski čisti sve resurse procesa, i zombi ne ostaje.

Stoga, zombi-procesi se pojavljuju kada proces završi (na primer, nakon SIGTERM), ali roditelj ne pozove wait() za dobijanje statusa završetka. SIGKILL ne izaziva zombi, jer proces se nasilno završava i odmah se uklanja iz tabele procesa.