Tag
signals
- Oct 24, 2026 Signals as Deferred Interrupts and the Async-Signal-Safe Subset How a signal handler interrupts an arbitrary instruction, why most library calls are unsafe inside one, and what the small permitted subset actually guarantees. computing history
- Sep 24, 2026 Signals: Delivery, Interruption, and the Async-Signal-Safe Set A signal handler runs on the thread it interrupted, with that thread half-finished, which is why only a small set of functions may be called from one. Delivery, masking, and the self-pipe pattern follow from the handler running on an interrupted thread. systems programming
- Sep 4, 2026 Process Groups, Sessions, and the Mechanics of Job Control Why Ctrl-C reaches a whole pipeline at once, what a background job actually is, and which kernel structures the shell manipulates to make fg and bg work. developer tools
- Jun 29, 2026 Restartable Sequences and Interruption Semantics How the kernel restarts an interrupted call, why a userspace critical section needs a kernel abort hook, and what the abort path guarantees. operating systems
- May 12, 2026 Signal Delivery, Thread Masks, and Which Thread Runs the Handler How the kernel chooses a thread for a process-directed signal, why the mask is per thread while the handler is shared, and where the choice becomes deterministic. operating systems
- Feb 12, 2026 From Page Fault to Signal: How SIGSEGV and SIGBUS Differ The kernel path that turns a bad memory access into a signal, why a missing mapping and an unbacked page produce different signals, and what siginfo tells a handler. systems programming
- Feb 9, 2025 The Terminal Line Discipline: Canonical Mode, Echo, and Raw Input How the kernel edits and interprets keystrokes before a program sees them, why Ctrl-C never arrives as a byte, and what changing to raw mode actually switches off. developer tools
- Jan 16, 2025 What a Kill Fault Looks Like to the Kernel: Signals, Freezes, and Orphans The difference between SIGTERM, SIGKILL, and freezing a process, what each leaves behind in sockets and locks, and why reaping behaviour decides whether a container restarts cleanly. devops
- May 17, 2024 Signal Handling in Shell Scripts: Traps, Races, and Termination Forwarding When a trap handler actually runs, which signals a script cannot catch, and how a wrapper passes SIGTERM to its children without orphaning them. developer tools
- Sep 7, 2023 ptrace and the Stop-Notify Model Behind a Debugger Attaching is a signal, every stop must be answered, and the same SIGTRAP means different things. How a tracer distinguishes the events it receives. developer tools
- Aug 30, 2023 Exit Status, Zombies, and What waitpid Can Tell a Parent A terminated process leaves a status word and an entry that must be reaped. Status encoding, the reason the record survives termination, and the four ways a parent can wait without deadlocking. systems programming
- Apr 16, 2022 Signal-Driven Sampling: How a Profiler Captures a Stack Without Instrumenting Code How a timer, a signal handler, and an async-signal-safe buffer produce periodic stack samples, and why the delivery path decides what a sample can mean. observability
- Mar 10, 2022 What a Pipe Holds: Kernel Buffering, Atomic Writes, and SIGPIPE The pipe as a bounded in-kernel queue, why writes below PIPE_BUF never interleave, and how a closed read end turns into a signal rather than an error. developer tools