Process
A running program with its own memory, environment, and identity.
A process is an instance of a running program, with its own memory space, its own copy of the environment it inherited, and a numeric identity. Processes form a tree: each is spawned by a parent and can outlive it.
Working with them from a script has a few sharp edges.
Names are not what you think. The process name is the executable's name, which can differ from an application's display name — commonly by capitalization. A pattern matching the wrong one silently matches nothing, and a command that reports "stopped" without having stopped anything is worse than an error, because the next step proceeds on a false premise.
Substring matching is dangerous. A pattern intended for one program matches any command line containing it, including unrelated system processes whose names happen to include the substring. Matching the executable exactly is the safe form.
Something may restart it. A process under a supervisor comes back immediately when killed, so "stop" and "kill" are different operations: a clean quit exits successfully and stays down, while a signal looks like a crash and triggers a restart.
Diagnosing contention needs per-process detail rather than an aggregate load figure, which lags and never says which program is responsible. See Resource Starvation.
See also4
Shell
The interactive command interpreter, and a programming language with unusually sharp edges.
Systems & Tooling15 connections
Daemon
A long-running background process managed by the operating system's service supervisor.
Systems & Tooling13 connections
Port
The numeric endpoint a network service listens on, and a scarce shared resource on a developer machine.
Systems & Tooling10 connections
Observability
How much of a system's internal state can be inferred from what it emits.
Method24 connections
Related5
Nearby in the graph rather than deliberately chosen. Looser, sometimes surprising.
Linked from13
- Actor ModelComputation & Algorithms
A concurrency model where isolated actors communicate only by asynchronous message, never by shared memory.
- Concurrency and ParallelismComputation & Algorithms
Concurrency is structuring independent tasks together; parallelism is actually running them at the same instant.
- Control GroupsSystems & Tooling
The Linux kernel feature that caps and accounts for a process group's CPU, memory, and I/O — the resource-limiting half of a container.
- Copy-on-WriteSystems & Tooling
Sharing a copy until the moment one side writes to it, deferring the cost of duplication until it's actually needed.
- DaemonSystems & Tooling
A long-running background process managed by the operating system's service supervisor.
- Event LoopComputation & Algorithms
A single-threaded runtime's mechanism for pulling the next callback off a queue once the call stack is empty.
- Garbage CollectionComputation & Algorithms
A runtime automatically reclaiming memory occupied by objects nothing can reach anymore.
- Init SystemSystems & Tooling
The first userspace process a kernel starts, and the ancestor of every other process on the machine.
- InodeSystems & Tooling
The record a Unix filesystem keeps about a file's metadata and data location — everything except its name.
- Linux NamespacesSystems & Tooling
The kernel feature that gives a process its own private view of a global resource — the foundation containers are built from.
- PortSystems & Tooling
The numeric endpoint a network service listens on, and a scarce shared resource on a developer machine.
- Resource StarvationTesting & Verification
Failures caused by competition for a finite shared resource rather than by any defect.
- ShellSystems & Tooling
The interactive command interpreter, and a programming language with unusually sharp edges.