An emulator is a hardware or software that enables one computer system to behave like another computer system. Emulators can be used to run software or use peripheral devices designed for the guest system. Typically, an emulator is divided into modules that correspond roughly to the emulated computers subsystems. Most often, an emulator will be composed of the following modules:
- A CPU emulator or CPU simulator, unless the target being emulated has the same CPU architecture as the host, in which case a virtual machine layer may be used instead.
- A memory subsystem module.
- Various input/output (I/O) device emulators.
Emulation is one strategy in pursuit of digital preservation and combating obsolescence. Emulation focuses on recreating an original computer environment, which can be time-consuming and difficult to achieve, but valuable because of its ability to maintain a closer connection to the authenticity of the digital.
Emulators can be used for various purposes, such as:
- To play video games and run different operating systems.
- To run apps that normally wouldnt work on your computer.
- To simulate hardware thats older and hard to get ahold of.
- To test concepts of software in a safe and localized environment.
It is important to note that most emulators tend to run slower than the device theyre simulating, and can potentially take a lot of processing power.