- Posted on
- • Command Line Interface
Signals in Linux
- Author
-
-
- User
- Linux Bash
- Posts by this author
- Posts by this author
-
Introduction
Signals are used to interact between processes and can occur at anytime, typically they are kill signals however processes can opt to handle them programatically unless they are SIGKILL or SIGSTOP signals.
List Of Available Signals
Table of signals
SIGNAL | VALUE | DEFAULT ACTION | POSIX? | MEANING |
---|---|---|---|---|
SIGHUP | 1 | Terminate | Yes | Hangup detected on controlling terminal or death of controlling process |
SIGINT | 2 | Terminate | Yes | Interrupt from keyboard |
SIGQUIT | 3 | Core dump | Yes | Quit from keyboard |
SIGILL | 4 | Core dump | Yes | Illegal instruction |
SIGTRAP | 5 | Core dump | No | Trace/breakpoint trap for debugging |
SIGABTR SIGIOT | 6 | Core dump | Yes | Abnormal termination |
SIGBUS | 7 | Core dump | Yes | Bus error |
SIGFPE | 8 | Core dump | Yes | Floating point exception |
SIGKILL | 9 | Terminate | Yes | Kill signal (cannot be caught or ignored) |
SIGUSR1 | 10 | Terminate | Yes | User-defined signal 1 |
SIGSEGV | 11 | Core dump | Yes | Invalid memory reference |
SIGUSR2 | 12 | Terminate | Yes | User-defined signal 2 |
SIGPIPE | 13 | Terminate | Yes | Broken pipe: write to pipe with no readers |
SIGALRM | 14 | Terminate | Yes | Timer signal from alarm |
SIGTERM | 15 | Terminate | Yes | Process termination |
SIGSTKFLT | 16 | Terminate | No | Stack fault on math co-processor |
SIGCHLD | 17 | Ignore | Yes | Child stopped or terminated |
SIGCONT | 18 | Continue | Yes | Continue if stopped |
SIGSTOP | 19 | Stop | Yes | Stop process (can not be caught or ignored) |
SIGTSTP | 20 | Stop | Yes | Stop types at tty |
SIGTTIN | 21 | Stop | Yes | Background process requires tty input |
SIGTTOU | 22 | Stop | Yes | Background process requires tty output |
SIGURG | 23 | Ignore | No | Urgent condition on socket (4.2 BSD) |
SIGXCPU | 24 | Core dump | Yes | CPU time limit exceeded (4.2 BSD) |
SIGXFSZ | 25 | Core dump | Yes | File size limit exceeded (4.2 BSD) |
SIGVTALRM | 26 | Terminate | No | Virtual alarm clock (4.2 BSD) |
SIGPROF | 27 | Terminate | No | Profile alarm clock (4.2 BSD) |
SIGWINCH | 28 | Ignore | No | Window resize signal (4.3 BSD, Sun) |
SIGIO SIGPOLL | 29 | Terminate | No | I/O now possible (4.2 BSD) (System V) |
SIGPWR | 30 | Terminate | No | Power Failure (System V) |
SIGSYS SIGUNUSED | 31 | Terminate | No | Bad System Called. Unused signal |
Further Reading
For further exploration on Linux signals, consider reviewing these resources:
Understanding Linux Signals: Offers an in-depth look at how signals work in Linux. Signal Documentation
Advanced Signal Handling: Techniques for mastering signal handling, especially for real-time and multi-threaded applications. Advanced Linux Programming
POSIX Signals: A closer look at POSIX standards for signals to better understand cross-platform uses. POSIX Signals Tutorial
Signal Safety and Best Practices: Discusses what can be safely done within a signal handler and common pitfalls in signal handling. Signal Handlers
Real-world Examples and Case Studies: Demonstrates how signals are used in various real-world Linux applications, enhancing practical knowledge. Linux Signal Handling
These resources provide a strong foundation for both beginner and advanced programmers looking to deepen their understanding of signal handling and development in Linux environments.