virtualization
Imagine you own one powerful physical computer, but you want it to behave like several separate computers — one running Windows, one running Linux, one kept clean for testing — each believing it has the machine all to itself. Virtualization is the trick that makes that possible: a thin layer of software draws a convincing illusion of a whole computer (or of an isolated environment) on top of the real one, so that several guests can share a single host safely and without stepping on each other. It is the foundation of cloud computing, where one big server in a data centre is sliced into many rented virtual computers.
The key idea is presenting a software illusion of hardware (or of an operating-system environment) and keeping each illusion isolated from the others. Each guest sees what looks like its own CPU, its own memory, and its own disks and network card; underneath, a controlling program quietly maps those virtual resources onto the real shared ones and intercepts anything dangerous a guest tries to do. Because the illusion is faithful, software written for a real machine usually runs inside the illusion unchanged. There are two broad flavours: full machine virtualization, where each guest runs an entire operating system on virtual hardware, and lighter operating-system-level virtualization, where guests (called containers) share one kernel but get separate, walled-off views of it.
Virtualization matters because it turns hardware into something flexible and fungible. You can run many workloads on one box (raising utilization and cutting cost), snapshot and clone a whole machine in seconds, move a running system from one server to another, and wall off an untrusted program inside its own sandbox. The honest trade-off is overhead: every layer of illusion costs some performance and memory, and isolation is only as strong as the layer that enforces it — a flaw in that layer can let one guest reach into another.
A cloud provider buys one server with 64 CPU cores and 512 GB of memory. Through virtualization it rents that single machine to forty different customers as forty small virtual computers, each isolated, each thinking it is alone on its own machine.
One physical machine, many isolated virtual ones — the basic shape of the cloud.
Virtualization is not the same as emulation in general: emulation can imitate a totally different kind of hardware (slowly), while machine virtualization usually runs the guest on the same kind of CPU as the host and lets most instructions execute directly, for speed.