Afslutning af en zombieproces i Linux-miljøer
Summary: Hvad er en zombieproces, hvordan man finder den, og hvordan man dræber eller afslutter den.
Ez a cikk a következő(k)re vonatkozik:
Ez a cikk nem vonatkozik a következő(k)re:
Ez a cikk nem kapcsolódik egyetlen konkrét termékhez sem.
Ez a cikk nem azonosítja az összes termékverziót.
Instructions
Hvad er en zombieproces:
Det er en proces, der sluttede, men ikke det hele fjernes straks fra hukommelsen, da dens procesbeskrivelse forbliver i hukommelsen.
Hvad skal være den normale opførsel af en proces:
Når en proces slutter, bliver processens status
Den overordnede proces skal derefter køre
Sådan finder du en zombie processer:
Kørsel af kommandoen
Kørsel af kommandoen
Sådan afsluttes akkumulerende zombieprocesser:
Det meste af tiden har zombieprocesserne det samme overordnede proces-id.
Der er to metoder til at fjerne processen:
Det er en proces, der sluttede, men ikke det hele fjernes straks fra hukommelsen, da dens procesbeskrivelse forbliver i hukommelsen.
Hvad skal være den normale opførsel af en proces:
Når en proces slutter, bliver processens status
EXIT_ZOMBIE og processens forælder underrettes om, at dens underordnede proces er død med SIGCHLD signal.
Den overordnede proces skal derefter køre
wait() for at systemopkaldet kan læse den døde proces' afslutningsstatus og andre oplysninger. Efter wait() kaldes, fjernes zombieprocessen fra hukommelsen. Dette sker hurtigt, så du ikke ser zombieprocesser akkumulere på dit system. Men i tilfælde, hvor vi ser flere zombieprocesser akkumulere, er dette en situation, hvor programkoden ikke er effektiv.
Sådan finder du en zombie processer:
Kørsel af kommandoen
top
Kørsel af kommandoen
ps -ef | grep defunct
Sådan afsluttes akkumulerende zombieprocesser:
Det meste af tiden har zombieprocesserne det samme overordnede proces-id.
Der er to metoder til at fjerne processen:
- Send
SIGCHLDsignal til den overordnede proces.
Dette signal fortæller den overordnede proces at køre
wait() System kalder og rydder op i sine zombiebørn:
kill -s SIGCHLD <PPID>
Eksempel:
kill -s SIGCHLD 2201
- Dræb zombieforældreprocessen
kill -9 <PPID>
Eksempel:
kill -9 2201
Érintett termékek
Dell OpenManage Enterprise, NetWorker SeriesTermék tulajdonságai
Article Number: 000019108
Article Type: How To
Utoljára módosítva: 12 ápr. 2025
Version: 4
Választ kaphat kérdéseire más Dell-felhasználóktól
Támogatási szolgáltatások
Ellenőrizze, hogy a készüléke rendelkezik-e támogatási szolgáltatással.