posix signals · linux · default actions · local

POSIX signal reference

Searchable table of POSIX signals with numbers, default actions, descriptions, and typical uses. Send with kill -SIGNAL pid or kill -N pid (numbers differ on non-Linux).

Linux Signal Reference
31 matches
Visible
31
all
Total
31
signals
Actions
5
defaults
Status
ready
local
Send: kill -SIGNAL pid · kill -N pid
signal table
#NameDefaultDescription
1TermHangup detected on controlling terminal.
2TermInterrupt from keyboard (Ctrl-C).
3CoreQuit from keyboard (Ctrl-\).
4CoreIllegal instruction.
5CoreTrace/breakpoint trap.
6CoreAbort signal from abort(3).
7CoreBus error (bad memory access alignment).
8CoreFloating-point exception.
9TermKill signal (cannot be caught or ignored).
10TermUser-defined signal 1.
11CoreInvalid memory reference (segmentation fault).
12TermUser-defined signal 2.
13TermBroken pipe: write to pipe with no readers.
14TermTimer signal from alarm(2).
15TermTermination request — default for kill(1).
16TermStack fault on coprocessor (rarely used).
17IgnChild process stopped or terminated.
18ContContinue if stopped.
19StopStop process (cannot be caught or ignored).
20StopStop typed at terminal (Ctrl-Z).
21StopBackground process attempting read from tty.
22StopBackground process attempting write to tty.
23IgnUrgent condition on socket.
24CoreCPU time limit exceeded.
25CoreFile size limit exceeded.
26TermVirtual alarm clock.
27TermProfiling timer expired.
28IgnWindow resize signal.
29TermI/O now possible (POLL).
30TermPower failure imminent.
31CoreBad system call.
typical uses & defaults
Default actions
Term · Default: terminate the process.
Core · Default: terminate the process and dump core.
Ign · Default: ignore the signal.
Stop · Default: stop the process.
Cont · Default: continue if stopped.
Typical uses
SIGHUP · Daemons often reload config on SIGHUP.
SIGINT · Stop foreground process gracefully.
SIGQUIT · Stop process and dump core for debugging.
SIGILL · Generated by CPU on bad opcode — usually a bug.
SIGTRAP · Used by debuggers (gdb breakpoints).
SIGABRT · assert() failure or explicit abort().
SIGBUS · Unaligned access or mmap'd file truncated.
SIGFPE · Divide-by-zero or invalid math op.
SIGKILL · Last resort to terminate a stuck process.
SIGUSR1 · App-specific — often used to trigger log rotation, etc.
SIGSEGV · Null pointer / out-of-bounds access.
SIGUSR2 · App-specific — second custom hook.
SIGPIPE · Common in shell pipelines when reader exits early.
SIGALRM · Implements timeouts in POSIX code.
SIGTERM · Polite shutdown signal; let process clean up.
SIGSTKFLT · Legacy — typically unused on modern Linux.
SIGCHLD · Parent reaps zombies with wait(2).
SIGCONT · Resume a process previously stopped.
SIGSTOP · Force-pause a process from outside.
SIGTSTP · Suspend job to background; resume with fg/bg.
SIGTTIN · Job control: bg process needs terminal input.
SIGTTOU · Job control: bg process tried to write to terminal.
SIGURG · TCP out-of-band data received.
SIGXCPU · Process exceeded RLIMIT_CPU.
SIGXFSZ · Wrote past RLIMIT_FSIZE.
SIGVTALRM · Timer that counts process CPU time only.
SIGPROF · Used by profilers (gprof).
SIGWINCH · Terminal apps redraw on window resize.
SIGIO · Asynchronous I/O notification.
SIGPWR · UPS daemons notify processes.
SIGSYS · Seccomp filter rejection or unknown syscall.
Quick Start

How signals work

Each process can receive numbered signals. SIGTERM (15) politely asks to quit; SIGKILL (9) is unstoppable; SIGSTOP/CONT pause and resume.

  1. 01

    Find the signal

    Search by name (SIGTERM), number (15), or description.

    Inputs are treated as UTF-8 throughout the pipeline and validated client-side as you type — nothing dispatches until the value is well-formed.

    searchinpututf-8client-sidevalidated
    search · textterm · set
    SIGTERM (15)
    loaded · parsedclient-side
  2. 02

    Read default action

    Term, Core, Ign, Stop, Cont — color-coded.

    Each toggle re-computes through a memoised hook, so flipping options never resets your input and the UI stays snappy on large inputs.

    actionoptionslivememoisedtoggles
    default · memoisedTerm · live
    process exits
    options set · memoisedlive
  3. 03

    Send the signal

    kill -15 1234, kill -SIGTERM 1234, or kill 1234 (default 15).

    Randomness — where used — comes from crypto.getRandomValues, never Math.random. Heavy work sits in useMemo.

    sendcomputeinstantlocaldeterministic
    send · instantkill · computed
    kill -TERM 1234
    computed · instantinstant
  4. 04

    Copy name

    Click any signal name to copy.

    Copy writes through navigator.clipboard and downloads use a Blob — zero network traffic. Same input plus same options always yield the same bytes.

    copydownloadzero-networkreproducible
    ok · copiedready · copied
    Copied SIGTERM
    shipped · ready to shipsuccess
Pro tips

Pro tips for everyday utilities

Reach for crypto.getRandomValues

Cryptographically random for IDs, tokens, salts. Math.random is for animation and games, not security.

Sort IDs lexicographically

UUID v4 has no time ordering. Use ULID or UUID v7 if you need sorted IDs.

Mock data with seeds

Faker-style libraries can be seeded so tests are reproducible. Embed the seed in the fixture file.

Reference cards beat memory

Cheatsheets for Vim, Git, Docker, Linux signals are faster than man pages when you’re mid-flow.

Browser APIs vary

Touch events, gamepads, and clipboard differ across vendors. Feature-detect before use.

Persist in the right place

localStorage for user preferences, sessionStorage for transient state, IndexedDB for structured data.

Use Cases

When to look up signals

Process management, daemon control, debugging.

Daemon reload

SIGHUP is the typical 'reload config' signal. Random values come from crypto.getRandomValues — cryptographically secure for tokens, salts, and session IDs. Math.random is deterministic enough for animations but predictable enough to be a security bug.

CSPRNG-backed

Graceful shutdown

SIGTERM first, SIGKILL only if needed. Pair with hashids, ULID, or UUID v7 when you need both random and sortable — useful for primary keys, public-facing IDs, and event log ordering without a sequence column.

reproducible

Debugging

SIGSEGV vs SIGBUS reveals memory bug class. Output is deterministic given the same seed, so fixtures and tests stay reproducible across CI runs and contributor machines. Embed the seed in the fixture file for full replay.

snappy

Container exits

Docker stop sends SIGTERM, then SIGKILL after 10s. Heavy work runs through useMemo so the UI stays snappy on large inputs. Same input + same options yields identical bytes — the kind of stability snapshot tests rely on.

feature-detected

Job control

Ctrl-Z → SIGTSTP; fg/bg send SIGCONT. Storage tools persist to the right backend: localStorage for user preferences, sessionStorage for transient state, IndexedDB for structured data. Pick the right shelf and quota worries disappear.

deterministic

Cross-platform notes

Numbers differ on macOS/BSD; names match. Browser feature detection: clipboard, fullscreen, gamepad, and Web Bluetooth APIs gracefully fall back when unavailable. No surprise white screens on Safari or older Firefox.

production-ready
FAQ

Frequently asked questions

SIGKILL and SIGSTOP can't be handled by a process — the kernel enforces them so init can always reclaim runaway processes.
On Linux yes; macOS/BSD use the same number. Some platforms differ — prefer SIGKILL by name.
SIGRTMIN..SIGRTMAX (typically 34-64) are user-defined real-time signals. Not listed here.
kill -SIGNAL -PGID — note the negative PID.
Yes — the reference is bundled in JS. Nothing is sent to a server.
Suggest a tool

Something missing?

Tell us what you need. We ship the top requests every two weeks.

Sent straight to the maintainers · no account needed
47 in queue·8 shipped this month
Request queued. Thanks!