<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2800.1400" name=GENERATOR></HEAD>
<BODY style="MARGIN-TOP: 2px; FONT: 10pt Book Antiqua; MARGIN-LEFT: 2px">
<DIV>What happens is the scanner when loaded (or reloaded) has about 12 threads 
(I believe this is the correct term) to handle mail as it comes in.  If 
more is needed more threads are given to a set maximum number.  What I can 
see when this happens is there are a lot of threads or instances of the threads 
listed when doing a ps -A.  I have to issue a killall -9 and scanner name 
to remove the entries.  Then I can restart the program.  This doesn't 
happen all the time, but lately I've been seeing this on site where there is a 
heavy load of e-mail.</DIV>
<DIV> </DIV>
<DIV>Jon</DIV>
<DIV> </DIV>
<DIV>Jon L. Miller, MCNE, CNS, ASE<BR>Director/Sr Systems Consultant<BR>MMT 
Networks Pty Ltd<BR><A 
href="http://www.mmtnetworks.com.au">http://www.mmtnetworks.com.au</A></DIV>
<DIV> </DIV>
<DIV>"I don't know the key to success, but the key to failure<BR> is trying 
to please everybody." -Bill Cosby</DIV>
<DIV> </DIV>
<DIV><BR><BR>>>> alan.graham@infonetsystems.com.au 7:07:20 pm 
23/07/2004 >>><BR>A zombie isn't an application locked up.  It's a 
child process that has<BR>finished, whose parent hasn't cleaned it up 
properly.<BR><BR>Unix processes start other processes by executing a 
'fork'.  The 'fork'<BR>copies the process, so that there are two identical 
processes except for<BR>the process id.  The copy is termed the child 
process, the original is<BR>the parent.  Typically, the code after the fork 
looks at the PID to see<BR>if this is the parent or the child  If it's the 
parent, it 'wait's for<BR>the child to end.  If it doesn't 'wait', when the 
child ends it<BR>zombies.  The idea is that eventually the parent will 
execute a 'wait',<BR>which will allow the zombies to end.  <BR><BR>It 
sounds like the virus scanner is forking a child process to handle<BR>each 
incoming mail.  Once each child ends, it zombies.  The 
parent<BR>process continues to monitor port 25 while the child is examining 
the<BR>mail to ensure that each mail coming in is handled in a timely 
fashion,<BR>no matter how long each preceding mail is taking to be 
scanned.  The<BR>parent should be cleaning up its own child processes 
periodically.<BR><BR>Zombies don't normally cause problems.  They should 
have released their<BR>resources before they ended, so it's just an entry on the 
process<BR>table.  Are they causing a 
problem?<BR><BR>HTH<BR><BR>Alan<BR><BR>On Fri, 2004-07-23 at 17:45, Jon Miller 
wrote:<BR>> On a Debian server  an application will go into a zombie 
state and lock-up.  Is there a reason for this? or better still is there a 
way to unlock it automatically? The application is a virus scanning software 
that receives mail on port 25, scans the mail and sends it to another server on 
another servers port 25.<BR>> <BR>> <BR>> Thanks<BR>> <BR>> Jon 
L. Miller, MCNE, CNS, ASE<BR>> Director/Sr Systems Consultant<BR>> MMT 
Networks Pty Ltd<BR>> <A 
href="http://www.mmtnetworks.com.au">http://www.mmtnetworks.com.au</A><BR>> 
<BR>> "I don't know the key to success, but the key to failure<BR>>  
is trying to please everybody." -Bill Cosby<BR>> <BR>> 
______________________________________________________________________<BR>> 
_______________________________________________<BR>> PLUG discussion list: 
plug@plug.linux.org.au<BR>> <A 
href="http://mail.plug.linux.org.au/cgi-bin/mailman/listinfo/plug">http://mail.plug.linux.org.au/cgi-bin/mailman/listinfo/plug</A><BR>> 
Committee e-mail: committee@plug.linux.org.au<BR>-- <BR>Alan Graham 
<alan.graham@infonetsystems.com.au><BR></DIV></BODY></HTML>