Technopedia

The technologist’s encyclopedia

Computer Hardware

Computer hardware studies the physical substrate on which programs execute: processors, memory, buses, and the operating system that mediates between software and silicon. It is relevant whenever a program’s performance, energy consumption, or resource usage must be understood or optimized.

Utility

Details

Computer hardware sits between programming and distributed systems: it takes the executable program produced by the compiler and runs it on physical silicon. The key insight is the memory hierarchy: registers (1 cycle) → L1 cache (4 cycles) → L2 cache (12 cycles) → L3 cache (40 cycles) → DRAM (100 cycles) → SSD (100,000 cycles) → HDD (10,000,000 cycles). Each level is faster but smaller and more expensive. The operating system manages this hierarchy: it schedules processes onto cores, maps virtual addresses to physical pages, and multiplexes I/O devices.

History

Classes

PageCore objectKey metricBoundary
CPU architectureInstruction set, pipeline, ALU, FPU, registersIPC, clock speed, energy per instructionHow a single core executes instructions; does not model the memory hierarchy or the OS
Memory hierarchyCaches, RAM, disk, TLBLatency, bandwidth, capacityHow data is stored and accessed at each level; does not model the instruction pipeline
Interfaces and busesPCIe, USB, SATA, NVMe, Ethernet, WiFiBandwidth, latency, powerHow components communicate; does not model the protocol stack or the application
Operating systemProcesses, threads, virtual memory, file systems, driversContext-switch cost, page fault rate, I/O throughputHow the OS mediates between programs and hardware; does not model the physical layout of the hardware

Authoritative sources