I have a requirement to develop a Process monitor module
that starts, stops and continually monitors certain processes (and
their threads) on an embedded QNX system.
The idea is that is that if a thread is detected to have exited or
hung/consumed CPU or deadloacked, this monitor would kill and restart the parent process and all
However ,most threads are created to run in a blocking type
scenario, and there is no guarentee that the events they block on
would occur often enough to determine if the thread was in trouble or
merely legitimately blocked for a long time.
Any ideas on how to go about this requirement.