Dale Dunlea wrote:
> Hi All,
>> I have a program which calls execl to fork a child process. I have a
> signal handler that does the needful when said process exits. Lovely.
>> But sometimes bad things happen. Sometime programs crash. But the pid of
> the child process is stored and so when the program restarts, it knows
> the pid of the child process of its previous instance. I need to install
> a signal handler in the new program instance for the old child process -
> to reparent it essentially. I presume there is a way of doing this, but
> I'm quite new to process control and all that.
man ptrace
Can you guarantee the pid will be correct.
I.E. can you guarantee the child process didn't
itself die and another process now holds the PID?
Do you handle the reboot case?
--
Pádraig Brady - http://www.pixelbeat.org
--- Following generated by rotagator ---
Process managment
ps -A #show all processes
ps -Af #show all processes with full command line
ps -Al #show all processes with extra info
ps -A --forest #show all processes and associated hierarchy
You can search the process list using grep, and send
signals using the command `kill -num pid`. The default
num is 15 (SIGTERM). `kill -l` will give a list.
Note kill -9 should never be used in normal operation.
--
Maintained by the ILUG website team. The aim of Linux.ie is to
support and help commercial and private users of Linux in Ireland. You can
display ILUG news in your own webpages, read backend
information to find out how. Networking services kindly provided by HEAnet, server kindly donated by
Dell. Linux is a trademark of Linus Torvalds,
used with permission. No penguins were harmed in the production or maintenance
of this highly praised website. Looking for the
Indian Linux Users' Group? Try here. If you've read all this and aren't a lawyer: you should be!