Discussion:
Sending Signals
(too old to reply)
cs412017
2005-09-26 22:58:04 UTC
Permalink
From what I understand, the Send_Signal function is used to send a
signal to a process.

The only way user mode processes can send signals to a process is
through system calls. However, the only system call that seems to be
sending a signal is Sys_Kill. The others do not send signals, rather
system calls like Sys_Signal and Sys_RegDeliver just set signal handlers.

So the question is, apart from Sys_Kill, since no other system calls
seem to be sending signals, how are we going to be testing our signal
handling / delivering system?
Saurabh Srivastava
2005-09-27 15:44:45 UTC
Permalink
| So the question is, apart from Sys_Kill, since no other system calls
| seem to be sending signals, how are we going to be testing our signal
| handling / delivering system?

I probably do not understand your question completely, but yes, Sys_Kill
is the only way a process can request a signal to be delivered.

If you are just worried about testing your code from the point of
Send_Signal then you can have any other syscall (say Sys_PS) call
Send_Signal to a random user process it chooses in addition to doing its
normal activity. Obviously, this is just a (fairly cooked up) suggestion
and it will probably be much more convenient to just write Sys_Kill
properly.

Loading...