Systems & Backend

Virtual Machine

also: VM

A software emulation of a full computer — its own OS and virtual hardware — running isolated on shared physical hardware.

A virtual machine (VM) is a software-defined computer: a complete guest operating system running on virtualized hardware, isolated from the host and from other VMs by the hypervisor. It behaves like a real, separate machine but shares physical resources with others.

Worked example: an EC2 instance is a VM — you get what looks like a dedicated Linux box with its own kernel, disk, and network, but it is one of many VMs on a physical server in a data center. Gotcha: a VM includes a full OS, so it is heavier than a container (slower to start, more memory) but provides stronger isolation (a separate kernel per VM) — the tradeoff that decides VM vs container: VMs for strong isolation and running different OSes, containers for density and fast, portable app packaging.