configuration files

Chris Pressey cpressey at catseye.mine.nu
Fri Dec 12 14:28:05 PST 2003


On Fri, 12 Dec 2003 17:10:03 -0500
Dan Melomedman <dan at xxxxxxxxxxx> wrote:

> Chris Pressey wrote:
> > (Of course, poll-hater that I am, I have to wonder if DragonFly
> > can't eventually make it so that each process started by RCNG is
> > somehow set up to send a message to the process that started it when
> > it dies.  Then the monitor doesn't have to check every second, it
> > can just wait for'exit' messages to come in.)
> 
> It's done with proper design - where there's a monitoring process for
> each service, and of course the service is the child of the monitoring
> process, no polling needed. The supervisors themselves have a parent
> that supervises them in turn. Here's a pstree example:
> 
> |-+= 00117 root (runsvdir)
> | |-+- 00118 root runsv getty-5
> | | \--= 00127 root /usr/libexec/getty Pc ttyv4
> | |-+- 00119 root runsv getty-1
> | | \--= 00125 root /usr/libexec/getty Pc ttyv0
> | |-+- 00120 root runsv getty-2
> | | \--= 00129 root /usr/libexec/getty Pc ttyv1
> | |-+- 00121 root runsv getty-3

Well, then I have to wonder why so many seemingly redundant processes
are needed.  Using messages instead of signals, couldn't process 117
wait for any of it's children to send it an 'exit' message, then restart
just that child?

-Chris





More information about the Kernel mailing list