Quote:
Originally Posted by wjevans_7d1@yahoo.co
SIGSTOP can't be caught or ignored. Period. It will stop the program. The only way the program can continue is if someone sends it a SIGCONT. I suspect someone is doing that, sometimes right away, sometimes after a few seconds.
Can you temporarily modify the code in the runaway process to catch the SIGCONT signal and log when it receives one?
Hope this helps.
|
Thanks to all for you rinput so far
.
I beleived SIGSTOP could not be ignoreed too (and want to believe it) but I ran a strace on this process while it was actively being sent SIGSTOP signals and it only showed the SIGSTOP signals being sent to the process every second or so - as my program is meant to do. There were no SIGCONT signals. So its been a real annoyance for me. I could send this process 10 SIGSTOP signals and see them all in the strace (one after another) but the process would just keep running, completely ignoring the signals. How can it do this?
Im looking into some other way of controlling server load. My true aim is to turn fast high CPU intensive processes into slow low intensive CPU processes. Nice, Renice are not effective enough - I'm now researching on other process scheduling type settings, like changing timeslice of the runtime of the process and other such settings - if they can be changed??? What kind of functions are avaialble to modify scheduling? Changing the CPU intensity of a running process? What methods are available? Sorry I'm not too knowledgable about this stuff yet, still reading up on it all. Any input is greatly appreciated, thanks in advance.