Computing Virtualization

Definition

Computing virtualization presents physical CPU, memory, storage, and networking resources as virtual machines that can run separate operating systems and applications.

The lecture introduces it as sharing hardware among unmodified operating systems, then qualifies this with paravirtualization, which requires guest modification.

Intuition

An application no longer needs a dedicated physical box. It gets an execution environment backed by resources controlled by a virtualization layer.

Study example

A web service, database, and payroll application run in three VMs on one physical server. Each has its own guest OS and configuration, while the host’s resources support all three. Their combined demand must fit the physical capacity.

Important rules

  • A VM is a virtual machine environment, not merely another application process.
  • Virtualization can support consolidation, isolation, and agility; their effectiveness depends on the implementation and configuration.
  • The lecture’s lift and shift means moving existing software from physical to virtual servers without redesigning it.
  • Extra guest OSes and virtualization machinery consume resources.
  • Virtualization provides building blocks for cloud computing. Managing cooperation across physical servers is an additional problem.

Common mistakes

  • Equating virtualization with an entire cloud service.
  • Assuming all guest software is always unmodified.
  • Treating containers as identical to VMs. The supplied lecture only introduces containers as a lighter direction; it does not explain their architecture.

Source

Fulvio Risso, Introduction to Computing Virtualization, slides 3-7, 16, 27-29. Lecture context: Lecture 02 - Introduction to Computing Virtualization. The intuition, example, and common mistakes are study explanations.