SIGR: Yet Another Simple SIGnal manageR
Signal plays an important role in communication with POSIX system.
For example, what if our code been killed, interrupted, hung on? Generally, the operation system (I am talking about BSD, Unix-like, POSIX system, same in the follow but will omitted), will not really "KILL" it, it will just send a kill signal with id to this process, the this process will process this signal later.
Here is a table to describe the id to default action.