The Unix/Linux OS provides a set of 64 signals in total. They are broadly divided into two types: the standard or Unix signals and the real-time signals. We shall find that while they do share common attributes, there are some important differences as well; here, we shall investigate the Unix (or standard) signals and later, the latter.
The generic communication interface for signalling from userspace, besides the keyboard key combinations (such as Ctrl + C), is the kill(1) utility (and, consequently, the kill(2) system call).
Besides the kill, there are several other APIs that deliver a signal; we shall flesh out more on this in a later section of this chapter.
Running the kill(1) utility with the -l or list option lists the available signals on the platform:
$ kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL...