>- List of signals: $kill -l
– You can’t handle SIGSTOP and SIGKILL. You can’t priorities which signal to handle.
– Signals are generated by setting the appropriate bit in the task_struct’s signal field. If the process has not blocked the signal and is waiting but interruptible (in state Interruptible) then it is woken up by changing its state to Running and making sure that it is in the run queue. (linuxhq.com)
– Signals that are sent to a process if an illegal flow of execution happens, are synchronous. They are also called trap e.g. illegal memory access.
– Asynchronous signals are also called interrupts and are sent from a process to another process or thread-to-thread.