![]() |
Hej och välkommen från USA till UNIX och Linux Forum! Tack för ditt besök och gå med i vår globala gemenskapen.
|
|
google unix.com
|
|||||||
| Forum | Registrera | Forum Regler | Länkar | Album | FAQ | Medlemslista | Kalender | Söka | Dagens inlägg | Markera forum som lästa |
| UNIX for Dummies Frågor & Svar Om du inte är säker på var att skriva en UNIX eller Linux fråga efter det här. Alla UNIX-och Linux-nybörjare välkomna! |
Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Senaste Inlägg |
| Zombie process | ruben.rodrigues | Shell-programmering och Skript | 2 | 03-11-2009 11:13 |
| zombie process | jeenat | Linux | 5 | 03-28-2008 07:36 |
| zombie daemon process! | rish2005 | UNIX för avancerade & Expertanvändare | 1 | 11-25-2005 09:59 |
| Zombie process | swhitney | UNIX för avancerade & Expertanvändare | 2 | 10-22-2004 05:12 |
| Zombie process | ORCA | UNIX for Dummies Frågor & Svar | 8 | 04-26-2002 02:54 |
![]() |
|
|
LinkBack | Thread Tools | Sök i denna tråd | Rate Thread | Visningslägen |
|
|
|
||||
|
init antar zombie process?
Hej
Jag försökte skapa en zombie med följande program: Kod:
int main(void)
{
pid_t pid;
int status;
if ((pid = fork()) < 0)
perror("fork error");
else if (pid == 0){ /* child process*/
exit(0);
}
printf("child process ID: %d\n", pid);
sleep(10);
return 0;
}
I <apue2>, Citat:
Dessutom barnet i mitt program försvinner omedelbart efter det att föräldern slutar. Som jag beskrev, jag tror inte att det görs av init, vem gjorde det? |
|
||||
|
Så vad med zombies?
En zombie är en process som har slutfört utförande men har fortfarande en post i den tabellen. Denna post är fortfarande behövs för den process som startade (nu zombie) för att läsa sin exit status. Termen zombie process kommer från den gemensamma definitionen av zombie (en undead person) På sikt är färgstark metafor, barnet har dött, men har ännu inte uppnåtts. Zombies kan identifieras i utdatat från UNIX ps kommandot genom förekomsten av ett "Z" i "STAT" kolumn. Zombies som finns i mer än en kort tid brukar indikera ett fel i moderbolaget program, förekomst av några zombies är inte oroande i sig, men kan tyda på ett problem som skulle växa allvarlig brist tyngre laster. Eftersom det inte finns något minne tilldelas zombie processer utom för processen tabellen in sig, det främsta problemet med många zombies inte kör slut på minne, utan snarare börjar ta slut process ID-nummer. Om du vill ta bort zombies från ett system till, ta bort den överordnade processen. När en process förlorar sin förälder, init blir det nya moderbolaget. Init regelbundet utför vänta system ring för att dra några zombies med init som förälder. |
|
||||
|
Citat:
|