Une machine virtuelle (VM) est un système d'exploitation invité s'exécutant dans un environnement complètement isolé au sein d'un système d'exploitation hôte normal. Les machines virtuelles modernes sont implémentées avec une émulation logicielle ou une virtualisation matérielle ou (dans la plupart des cas) les deux ensemble.