Also known as: computer hardware, hardware
Computer hardware is the set of physical parts you can touch — the chips, circuit boards, memory modules, drives, and case — as opposed to the software that tells them what to do.1
Overview
A computer is anything that takes input, follows instructions to process it, and produces output. That definition spans an enormous range: a warehouse server, the laptop on your desk, and the tiny chip inside a sensor are all computers by the same rule.
Nearly every one of them is built from the same four building blocks: a central processing unit to run instructions, random-access memory for active working data, storage for data that must survive a power cycle, and input/output to move data in and out. Everything else — buses, power, cooling, expansion cards — exists to connect and support those four.
The four building blocks
Each block has a distinct job, and the differences in speed and persistence between them shape how software is written:
| Block | Job | Speed | Keeps data without power? |
|---|---|---|---|
| CPU | Execute instructions | Fastest | No |
| Memory (RAM) | Hold active working data | Very fast | No |
| Storage | Keep data long-term | Slower | Yes |
| Input/Output | Move data in and out | Varies | — |
This is why a program loads from slow, permanent storage into fast, volatile memory to run, and why losing power mid-task loses anything not yet written back to storage.
Why it matters
Knowing which physical resources a device has — how fast its CPU is, how much memory and storage it carries, what it can connect to — tells you what software it can realistically run. Software-defined-radio software like GopherTrunk runs across this whole range, from a full desktop down to a single-board computer by the antenna; the hardware sets the ceiling on sample rates, channel counts, and how much decoding a node can sustain.
Sources
-
Computer hardware — Wikipedia, on the physical components of a computer and the hardware/software distinction. ↩