Emulator to nic innego jak program komputerowy, który duplikuje funkcje innego systemu. Pozwala nam to np. uruchomić gry z PSX na PC, odpalić system iOS na Androidzie itp. Pierwszy system nazywany jest gospodarzem, a drugi gościem. Mówimy, że drugi system jest emulowany przez pierwszy.
Natomiast emulacja to proces programowego naśladaowania działania określonego oprogramowania lub platformy sprzętowej przez inny system lub na sprzęcie innego typu.
Porozmawiajmy o wymaganiach
Kojarzycie 16-bitową konsolę Nintendo? Super Nintendo Entertainment System wyposażona była w procesor Ricoh 5A22 @ 3.58 MHz. By idealnie odwzorować to co potrafiła zrobić, twórcy emulatorów potrzebują około 3GHz mocy przerobowej. Zatem idealny emulator SNES'a wymaga 140x mocniejszego procesora niż sama konsola.
§ Kwestie prawne §
Jeśli chodzi o kwestie legalności emulatorów to sprawa wygląda następująco.
Aby wszystko było zgodne z prawem, musicie posiadać oryginalną konsolę oraz
oryginalne gry, które chcecie emulować. To nie wszystko: kopię gry do emulacji
musicie wykonać sami. Piractwem jest natomiast pobierania BIOS-u lub ROM-ów
z internetu, z wyjątkiem sytuacji kiedy wygasną prawa autorskie. Zgodnie
z prawem wygasają one po upływie 70 lat od śmierci twórcy, lub 70 lat od śmierci
współtwórcy, który żył najdłużej.
(Powyższe prawa dotyczą tylko Polski!)
Wirtualizacja
Wirtualizacja to proces polegający na odtwarzaniu przez oprogramowanie istnienia zasobów, które wykorzystują ustalone podczas konfiguracji zasoby fizyczne. np. wirtualna maszyna stosuje wirtualizację w celu emulowania pracy maszyny z danym systemem operacyjnym pozwalając przez to badać zachowanie tej maszyny i jej oprogramowania bez wpływania na realny system operacyjny, na którym pracujemy.
Wirtualizacja a emulacja
W obrębie pojęcia „wirtualizacja” można wyróżnić trzy grupy rozwiązań: