T30 Dec 19, 2025 2 min read

Virtual machine

A virtualized computer that runs an entire guest OS on virtual hardware, isolating workloads more strongly than a process alone.

Definition

A virtual machine (VM) is a virtualized computer: it runs a full guest operating system on virtual hardware provided by a hypervisor.

A common ambiguity: “VM” can mean two things

In systems conversations, “VM” is sometimes used in two different ways:

  • System VM (this page’s primary meaning): a guest OS running on virtual hardware (AWS EC2, VMware, etc.).
  • Language VM: a runtime that executes bytecode and manages execution for a language (JVM, .NET CLR). That meaning is closer to runtime than to infrastructure virtualization.

When comparing “containers vs VMs”, the intended meaning is almost always “system VM”.

VM vs container

  • A container shares the host kernel and isolates primarily at the process level.
  • A VM has its own guest kernel, so isolation boundaries are typically stronger (with different cost/operational tradeoffs).

Why VMs matter in practice

VMs affect the runtime environment: kernel version, drivers, networking, clock behavior, and resource limits can differ from bare metal or containers.