Skip to content
ENExplore Calculators

Signal Delivery Time Calculator

Estimate signal delivery latency to a target process under varying system load.

About Signal Delivery Time Calculator

Standard (non-realtime) POSIX signals are not queued per-instance — multiple pending deliveries of the same signal collapse into one — but realtime signals (SIGRTMIN..SIGRTMAX) delivered via sigqueue(2) do queue, and a backlog of pending signals must each be dequeued and dispatched to a handler before the process resumes normal execution. This calculator models the cumulative delivery latency as queue depth multiplied by per-signal processing time, giving a rough worst-case bound for how long a process might spend just working through a signal backlog.

Formula

Signal delivery time

delivery_time_us = signal_queue_depth × processing_time_per_signal

Q_{depth}
pending signal queue depth
t_{signal}
processing time per signal (µs)

Worked example

With the default values below, Signal Delivery Time Calculator returns Estimated Delivery Time (µs) of 40.00. Change any input above and every figure here is recalculated in your browser.

Inputs used

Signal Queue Depth (pending signals)minimum 0
8
Processing Time per Signal (µs)minimum 0.1
5
Signal Handler Overhead (µs)minimum 0
2

Results

Estimated Delivery Time (µs)
40.00
Estimated Delivery Time (ms)
0.0400
Total Incl. Handler Overhead (µs)
56.00
Worst-Case Delay for Last Queued Signal (µs)
56.00

Step by step

  1. 1Values used
  2. 2Signal delivery time
  3. 3Estimated Delivery Time (µs)= 40.00
  4. 4Estimated Delivery Time (ms)= 0.0400
  5. 5Total Incl. Handler Overhead (µs)= 56.00
  6. 6Worst-Case Delay for Last Queued Signal (µs)= 56.00

Assumptions and limits

  • The result is derived only from the 3 inputs listed above. Anything not among them is not part of the calculation.
  • In particular, this calculator does not take inflation, tax, fees or charges or compounding frequency into account.
  • Figures are rounded for display to 4 decimal places, so totals built from several rounded parts can differ slightly from the unrounded arithmetic.

How these calculators are built and tested is described on the Methodology page. If a figure looks wrong, please report it.

Frequently Asked Questions

Do regular signals like SIGTERM actually queue like this?

No — standard signals are binary pending flags; sending the same standard signal multiple times before delivery has no cumulative effect. Only realtime signals (SIGRTMIN through SIGRTMAX) queue multiple pending instances, which is what this calculator's queue-depth model best represents.

How can I inspect pending signals for a process?

`cat /proc/PID/status` shows `SigPnd` (thread-pending) and `ShdPnd` (process-wide pending) as hexadecimal bitmasks where each bit corresponds to a signal number.

What makes per-signal processing time vary?

Signal handler complexity, whether the handler must acquire locks, context-switch overhead if delivery requires waking a sleeping thread, and kernel signal-delivery path overhead (e.g. ptrace interception) all add to the effective per-signal cost beyond the bare minimum kernel dispatch time.

Signal Delivery Time Calculator | Calcrivo