Maszyna wirtualna składa się z systemu operacyjnego, plików programów i plików danych i wymaga do działania programu do wirtualizacji. Każda maszyna składa się z różnych plików maszyn wirtualnych, w tym pliku wirtualnego dysku twardego, pliku konfiguracyjnego i pliku stanu zawieszenia. Inne popularne pliki to pliki dziennika, pliki obrazów dyskietek i specjalne pliki wewnętrzne, których niektóre programy do wirtualizacji potrzebują do działania maszyny.
Pliki wirtualnego dysku twardego są zwykle największymi ze wszystkich plików maszyny wirtualnej i zawierają system operacyjny maszyny wirtualnej, pliki programów oraz wszelkie dane osobiste przechowywane w wirtualnym systemie operacyjnym. Niektóre programy do wirtualizacji przechowują wszystkie dane wirtualnego dysku twardego w jednym dużym pliku, ale inne dzielą wirtualny dysk twardy na mniejsze części, aby ułatwić przechowywanie i tworzenie kopii zapasowych. Kiedy ktoś konfiguruje maszynę wirtualną, często ma opcje ustawienia stałego rozmiaru dysku twardego lub umożliwienia jego rozszerzenia do określonego limitu. Chociaż większość maszyn wirtualnych ma co najmniej jeden dysk twardy, mogą one zawierać dodatkowe dyski.
Pliki maszyn wirtualnych obejmują również pliki konfiguracyjne używane do określania ustawień i opcji sprzętowych każdej maszyny wirtualnej. Programy do wirtualizacji różnią się dostępnymi opcjami konfiguracyjnymi, ale użytkownicy zazwyczaj mogą wybrać ilość pamięci używanej przez maszynę, wielkość dysku twardego, liczbę używanych procesorów lub rdzeni oraz sposób, w jaki maszyna wirtualna korzysta z napędu optycznego maszyny fizycznej. Inne opcje obejmują udostępnianie folderów, opcje drukowania, ustawienia wideo i audio, ustawienia sieciowe i opcje urządzeń uniwersalnej magistrali szeregowej (USB). Każda opcja często obsługuje dodatkowe zaawansowane ustawienia, które mogą wdrożyć doświadczeni użytkownicy.
Większość programów do wirtualizacji pozwala użytkownikom tymczasowo zawiesić maszynę wirtualną w jej bieżącym stanie, więc każda maszyna wirtualna często zawiera plik zawierający informacje o stanie maszyny, gdy użytkownik ją wstrzymał. Gdy użytkownik ponownie włącza maszynę, program do wirtualizacji używa pliku do przywrócenia środowiska wirtualnego systemu operacyjnego i wszelkich otwartych programów lub plików. Ten plik jest zastępowany za każdym razem, gdy maszyna wirtualna jest zawieszana i przywracana.
Inne pliki maszyn wirtualnych obejmują obrazy wirtualnych dyskietek, pliki dzienników i pliki wewnętrzne, których program do wirtualizacji używa do prawidłowego ładowania maszyn wirtualnych. Gdy użytkownik tworzy kopię zapasową maszyny za pomocą niektórych programów, proces może również utworzyć specjalny plik kopii zapasowej, który pomoże użytkownikowi zaimportować maszynę wirtualną do innego programu. Chociaż większość programów do wirtualizacji zawiera te różne pliki, rozszerzenie używane dla każdego typu pliku jest bardzo różne.