Emulátor je v informatice druh softwaru umožňující běh počítačových programů na jiné platformě (architektuře, operačním systému), než pro kterou byly původně vytvořeny a kterou samy od sebe podporují. Typickým příkladem emulátoru je program umožňující běh videoher známých z herních konzolí na běžném PC pod Microsoft Windows či Linuxem. Emulace je speciálním případem virtualizace (někdy je však chápána jako silnější pojem).
V informačně-teoretickém smyslu lze podle Churchovy–Turingovy teze libovolné výpočetní prostředí emulovat na libovolném jiném. Tato teoretická vlastnost však v praxi naráží na dvě hlavní překážky: Příslušná emulace může být pro praktické účely příliš pomalá, avšak nejčastější překážkou je špatná dostupnost informací o původní architektuře (platí pro proprietární software). Při tvorbě emulátoru je pak potřeba používat metody reverzního inženýrství.
Emulátory se všeobecně odkazují na schopnost počítačového programu nebo konkrétního zařízení napodobit, emulovat jiný program či zařízení. Typický příklad lze najít ve světě tiskáren. Mnoho tiskáren je navrženo tak, aby dokázaly napodobit tiskárny společnosti Hewlett-Packard, protože jsou popsané ve velkém počtu programů. Pokud tiskárny jiných výrobců dokáží emulovat tiskárny HP, jsou schopné tisknout z programů, které by s těmito tiskárnami normálně nepracovaly.
Emulátor nemusí vystupovat jen jako software, který napodobuje, emuluje jiné prostředí, ale také jako hardwarový emulátor. Jedná se například o DOS kompatibilní karty, které se vyskytly v dřívějších verzích Macintoshů pod názvem Centris 610 nebo Performa 630. Díky tomu byli majitelé takového počítače schopni spouštět programy známé z PC.
Emulace se zabývá obnovováním původního počítačového prostředí, které již například na nových platformách nemusí být dostupné, toho se dá využít i pro uchovávání zastaralejších souborových typů. Díky tomu je možné původní (starší) software provozovat i na aktuálních typech operačních systémů.[1] Emulovaná aplikace přináší uživateli původní vzhled i funkčnost softwaru na aktuální platformě.[2] Díky tomu má uživatel přístup k jakémukoliv softwaru nebo operačnímu systému na současné platformě, zatímco emulovaný objekt běží ve svém typickém prostředí.[3] Jeffery Rothenberg, je jedním z prvních zastánců emulace, který vyřkl myšlenku, že by se emulace měla využít k udržování digitálních informací. Jednalo by se tak podle Rothenberga o „ideální rozšiřitelné a dlouhodobé řešení, které by zajišťovalo interoperabilitu jednotlivých souborových verzí“.[4] Kdyby tedy byla v praxi vytvořena nová verze nějakého softwaru, spíše než migrace starších podporovaných souborů by se dal vytvořit jednoduchý emulátor pro aplikace, který by umožnil přístup i ke starším typům souborů.
Na emulaci je často nahlíženo jako na jistotu a strategii k uchování stávajících digitálních objektů a dat. Toho se využívá i v moderních médiích. Například Cory Arcangel se specializuje na oživení zastaralých technologií a jeho práce je uznávaná hlavně z hlediska významu uchování digitální kultury. Největším významem emulace v moderních médiích je uchování dat na dobu neurčitou a jejich zpětná a bezchybná interpretace. Pozdější interpretace dat není závislá na žádném konkrétním hardwaru, který taktéž s postupem času významně zastarává. Paradoxem zůstává, že emulátory musí být schopny běžet i na budoucích platformách tak, aby byla možnost starší data kdykoliv v budoucnu obnovit.[9]
V tomto článku byl použit překlad textu z článku Emulator na anglické Wikipedii.