Zalety

Przenośność
Aby uruchomić emulator pod innym systemem wystarczy przekompilować kod emulatora i być może inaczej zorganizować tłumaczenie urządzeń wejścia-wyjścia.
Możliwość uruchomienia w trybie nieuprzywilejowanym.
Niezależność od systemu operacyjnego, który będzie uruchamiany
Emulacja to pełna symulacja sprzętu - dlatego uruchamiane systemy operacyjne nie mają szans na zorientowanie się, że coś jest nie tak.
Duża możliwość manipulacji sprzętem (maszyny wirtualnej)
Nieograniczony dostęp do stanu maszyny
Można zapisać w pliku stan maszyny, czyli stan pamięci, rejestry wirtualnego procesora, dyski, zegar itp. Taki zrzut można później odtworzyć, a oprogramowanie się nie zorientuje, dlatego że nawet czas jest symulowany.
Bardzo przydatne przy debugowaniu systemów operacyjnych i w przechodzeniu trudnych gier zręcznościowych.
Determinizm
Skoro możemy zapisać cały stan maszyny, to mając ciąg zdarzeń zewnętrznych możemy odtworzyć dokładnie akcję maszyny krok po kroku. Przydatne przy śledzeniu włamań i badaniu narzędzi włamywacza.

 

Emulacja maszyny.

spis treści

Wady.