beginner 10 min read

Glossary of hardware terms

This is a plain-language reference for the key terms used across the Intro to Hardware path. Definitions are short on purpose; each links to the lesson that explains the idea in full. Terms are grouped by theme and roughly ordered from foundational to advanced within each group, following the shape of the path itself.

Foundations

Hardware — The physical parts of a computing device you can touch: chips, boards, memory, drives, and the case around them. See What is computer hardware?

Software — The instructions that run on hardware. Unlike hardware, it can be changed without replacing the machine. See What is computer hardware?

Computer — Any machine that takes input, processes it by following instructions, and produces output, from a data-centre server down to a tiny chip in a sensor. See What is computer hardware?

CPU (central processing unit) — The chip that carries out a program’s instructions; the part most people call the “brain” of a computer. See CPU, memory, storage & I/O

Core — A self-contained processing unit inside a CPU; a multi-core chip can work on several tasks at once. See CPU, memory, storage & I/O

Clock speed — How many cycles per second a CPU runs, measured in gigahertz (GHz); a rough, not absolute, guide to how fast it works. See CPU, memory, storage & I/O

RAM (memory) — Fast, temporary working storage that holds the data and programs a computer is actively using; it is cleared when power is lost. See CPU, memory, storage & I/O

Storage — Where data is kept long-term so it survives a power cycle, such as a hard drive or solid-state drive. See CPU, memory, storage & I/O

SSD (solid-state drive) — Storage that keeps data on flash memory chips with no moving parts, far faster and more rugged than a spinning hard drive. See CPU, memory, storage & I/O

Flash memory — Non-volatile storage that holds data without power, used in SSDs, memory cards, and the on-board storage of small devices. See CPU, memory, storage & I/O

I/O (input/output) — The channels through which a computer takes in and sends out data, from keyboards and screens to network ports and sensors. See CPU, memory, storage & I/O

Operating system (OS) — The software that manages a device’s hardware and resources and gives other programs a consistent way to run. See CPU, memory, storage & I/O

Hardware spectrum — The full range of computing hardware, from distant cloud servers through personal devices down to tiny microcontrollers, each suited to different jobs. See The hardware spectrum — cloud to microcontroller

General-purpose computer — A machine designed to run many different programs and adapt to many tasks, like a laptop or server. See The hardware spectrum — cloud to microcontroller

Embedded computer — A computer built into a larger device to do one specific job, rather than serving as a general-purpose machine. See The hardware spectrum — cloud to microcontroller

Compiled language — A language whose programs are translated to machine code ahead of time, common where performance and small footprints matter. See Programming languages & where they run

Interpreted language — A language whose programs are read and run on the fly, convenient on capable hardware but heavier on resources. See Programming languages & where they run

Cost, power & performance — The three competing pressures behind almost every hardware choice: what it costs, how much energy it draws, and how much work it can do. See Cost, power & performance trade-offs

Trade-off — A choice where gaining one quality means giving up another, such as more performance for higher cost or power draw. See Cost, power & performance trade-offs

Servers and hosting

Server — A computer that provides services or data to other machines over a network, such as serving web pages or running an application. See Web & shared hosting

Web hosting — A service that runs your website on someone else’s servers so it is reachable on the internet. See Web & shared hosting

Shared hosting — The cheapest kind of web hosting, where many customers’ sites run together on one server and share its resources. See Web & shared hosting

VPS (virtual private server) — A slice of a physical server that acts like your own machine, giving more control than shared hosting at lower cost than a whole server. See Virtual private servers (VPS)

Virtualization — Splitting one physical computer into several isolated virtual machines, each behaving like a separate computer. See Virtual private servers (VPS)

Hypervisor — The software layer that creates and runs virtual machines on a physical host, dividing its resources between them. See Virtual private servers (VPS)

Root access — Full administrative control over a server, letting you install software and change any setting. See Virtual private servers (VPS)

Dedicated server — A whole physical server rented for your exclusive use, with no other customers sharing its hardware. See Dedicated servers

Home server — A computer you run at home to host services for yourself, from file storage to a personal website. See Home servers & self-hosting

Self-hosting — Running services on hardware you own and control instead of paying a provider to run them for you. See Home servers & self-hosting

NAS (network-attached storage) — A dedicated device that stores files and shares them with other machines over a home or office network. See Home servers & self-hosting

Port forwarding — A router setting that lets traffic from the internet reach a specific device on your home network, needed to expose a self-hosted service. See Home servers & self-hosting

Personal and mobile devices

Desktop — A stationary personal computer, typically more powerful, expandable, and cheaper per unit of performance than a laptop. See Desktop computers

Laptop — A portable personal computer with screen, keyboard, and battery built in, trading some performance and expandability for mobility. See Laptops

Thermal throttling — When a chip deliberately slows itself to avoid overheating, a common limit on sustained performance in thin laptops and small devices. See Laptops

Development machine — The computer you write and test code on; choosing one means balancing power, portability, and budget against how you work. See Choosing your development machine

Smartphone — A pocket-sized, touchscreen computer with a cellular connection, sensors, and a battery, running apps as well as making calls. See Smartphones

Tablet — A larger touchscreen device that sits between a phone and a laptop, good for media and light work and sometimes paired with a keyboard. See Tablets

Native app — An application built specifically for one platform’s hardware and operating system, giving full access to its features and best performance. See Developing for mobile devices

Cross-platform — Building software that runs on more than one kind of device or operating system from largely shared code. See Developing for mobile devices

PWA (progressive web app) — A website built to behave like an installed app, working offline and launching from the home screen without an app store. See Developing for mobile devices

Single-board computers and microcontrollers

Single-board computer (SBC) — A complete computer built on one small circuit board, with CPU, memory, storage, and ports, capable of running a full operating system. See What is a single-board computer?

GPIO (general-purpose input/output) — Pins on an SBC or microcontroller that your code can read or switch on and off to talk to sensors, lights, motors, and other electronics. See What is a single-board computer?

Raspberry Pi — A popular, low-cost single-board computer widely used for learning, hobby projects, and small servers. See The Raspberry Pi & its alternatives

HAT (hardware attached on top) — An add-on board that stacks onto a Raspberry Pi’s pins to give it extra features like displays, sensors, or power options. See The Raspberry Pi & its alternatives

Programming an SBC — Writing software for a single-board computer much as you would for a desktop, using its operating system and ordinary languages and tools. See Programming & running software on an SBC

Edge computing — Running computation close to where data is produced, on devices or local hardware like an SBC, rather than sending everything to a distant data centre. See SBC use cases, strengths & drawbacks

Microcontroller (MCU) — A tiny, low-power computer on a single chip that combines processor, memory, and I/O, dedicated to controlling one device or task. See What is a microcontroller?

Bare metal — Running code directly on a chip with no operating system in between, common on microcontrollers for tight control and predictability. See What is a microcontroller?

Firmware — Low-level software loaded onto a device’s chip to control its hardware directly, sitting between pure hardware and ordinary programs. See What is a microcontroller?

Arduino — A widely used family of beginner-friendly microcontroller boards and the open-source ecosystem of tools and code around them. See Arduino & the maker ecosystem

Sketch — The name Arduino gives to a program written for its boards. See Arduino & the maker ecosystem

ESP32 — A low-cost microcontroller with built-in Wi-Fi and Bluetooth, popular for connected and wireless projects. See ESP32 & wireless microcontrollers

MicroPython — A compact version of the Python language made to run directly on microcontrollers. See Programming microcontrollers: languages, use cases & limits

Real-time — A requirement that a device respond within strict, guaranteed time limits, where being late is itself a failure; common in microcontroller work. See Programming microcontrollers: languages, use cases & limits

Deep sleep — A very low-power mode a microcontroller drops into between tasks to stretch battery life, waking only when needed. See Programming microcontrollers: languages, use cases & limits

Choosing hardware

Requirements — What your project must actually do and the conditions it must meet, worked out before deciding what hardware to buy. See Start with your requirements

Constraint — A fixed limit your choice must respect, such as budget, size, power supply, or response time. See Start with your requirements

Project type — The broad category of what you are building (a website, a mobile app, a sensor, a home server), which steers you toward fitting hardware. See Matching hardware to the project type

Combining tiers — Using device, server, and cloud hardware together in one system, with each tier handling the part of the job it suits best. See Combining tiers: device, server & cloud

Cloud — Computing power and storage provided over the internet on demand, instead of from machines you own and run yourself. See Combining tiers: device, server & cloud

Latency — The delay between asking for something and getting a response; keeping it low is a common reason to move work closer to the user. See Combining tiers: device, server & cloud

Scaling — Handling more work by adding capacity, whether by upgrading a machine or by adding more machines. See Combining tiers: device, server & cloud

Decision framework — A structured way to weigh hardware options against your needs so the choice is reasoned rather than arbitrary. See A practical decision framework

Total cost of ownership — The full cost of a hardware choice over time, including power, maintenance, and replacement, not just the sticker price. See A practical decision framework

Worked example — A realistic scenario walked through end to end to show how the decision framework picks hardware for a real project. See Worked examples: picking hardware for real projects