---
type: theoretical
---
- Hypervisor-Based Virtualization
	- Utilizing hypervisor-based virtualization solutions like VMWare ESXi or Proxmox to create and manage multiple VMs on a single server.
- Cloud computing

## Requirements
1. Safety: hypervisor should have **full control** of virtualized resources
2. Fidelity: behaviour of a program on a virtual machine should be the same as if it were running bare metal
3. Efficiency: Much of code should run without intervention by hypervisor


## Popek and Goldberg

Sensitive instructions behave differently in user vs. kernel mode. IO as an example.
Privileged instructions cause a trap if executed in user mode.

$$
\text{Sensitive INS. } \subseteq \text{ Privileged Ins.}
$$

## Types
![](Pasted%20image%2020250505205120.png)
