1752780 Members
6246 Online
108789 Solutions
New Discussion юеВ

Re: SIGKILL Failures

 
Michael Soulier
Occasional Contributor

SIGKILL Failures

Hey people. Why is it that a SIGKILL can fail on HPUX??

Mike
2 REPLIES 2
Paul Hite
Trusted Contributor

Re: SIGKILL Failures

First, this happens on all version of unix, not just hp-ux.

Unix makes certain guarantees about the way that various things function. One such guarantee, for instance, is that a disk write system call is atomic. That means either the write happens or the write doesn't happen. There is not supposed to be any such thing as half a write. To enforce this, when a process is waiting for a disk write to complete there must be a way to render that process unkillable until the write has completed.

So if a process is waiting for an event and its priority is below a constant called PZERO, the process may not be killed.

Sometimes this mechanism, well, screws up. Any person who writes a device driver or a system call can set the priority low enough to render the process unkillable and then leave the process waiting for an event that will never happen. These are bugs and every os has a few. But without the mechanism to guarantee that some i/o is atomic, you could not have databases or transaction processing.
CHRIS ANORUO
Honored Contributor

Re: SIGKILL Failures

What process are you sending SIGKILL to?
When We Seek To Discover The Best In Others, We Somehow Bring Out The Best In Ourselves.