kill -0

Florian Lohoff flo at rfc822.org
Thu Dec 4 15:26:16 CET 2003


On Thu, Dec 04, 2003 at 02:51:14PM +0100, Markus Wigge wrote:
> Tag,
> 
> |>Allerdings: ist das sicher? Theoretisch kann ein anderer Prozess ja
> |>schon unter dieser PID laufen.
> |
> | unter "normalen" Umständen sicher genug würd ich sagen, sooo
> | wenig PIDs gibts auch nicht, immerhin 4 Millionen (Kernel 2.6,
> | include/linux/threads.h, PID_MAX_LIMIT)
> 
> Naja, aber um diese Theoretische Möglichkeit auszuschlißen habe
> ich mich jetzt für folgendes entschieden, ihr könnt ja mal
> kommentieren ob man das so machen kann oder sollte:
> 
> # test if zope is alive
> if [ -f ${ZOPE_PID} ]
> then
> ~    # look if this process is Zope
> ~    PROCESS=$(ps $(cat ${ZOPE_PID}) | grep z2.py)
> ~    if [ ! -z "${PROCESS}" ]
> ~    then
> ~        echo "Zope is already running! I will not start it now!"
> ~        exit 1
> ~    fi
> fi
> [...]
> 
> Ich schau halt nach welcher Prozess mit der PID läuft, wenn es Zope ist
> OK, wenn nicht, dann existiert die PID nicht oder es war ein anderer
> Prozess.

Diese ganze "ps" geschichte finde ich nie so elegant weil die meisten
programme sich auch mehrfach starten lassen bzw unter verschiedenen
usern mehrfach laufen koennen. Die PID version ist zuverlaessiger.

Im normalfall ist die PID konstant steigend d.h. die wrappen nach 2^32
forks was normalerweise Jahre dauert :)

Flo
-- 
Florian Lohoff                  flo at rfc822.org             +49-171-2280134
                        Heisenberg may have been here.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lug-owl.de/pipermail/linux/attachments/20031204/05ed240b/attachment.sig>


More information about the Linux mailing list