Emulation

Emulation is when one computer system is programmed to imitate another computer platform. Applications called emulators allow you to run software written for a particular hardware platform entirely within a simulated environment on another platform.

One common type of emulator simulates an old or obsolete computing platform on a modern device. For example, an emulator for the Motorola 680x0 Macintosh can recreate a classic Mac inside a program window on another computer. These emulators allow you to run software, including the necessary operating system, that is not available for or compatible with modern computers. These types of emulators are popular with computer historians and preservationists.

In addition to simulating old computers, emulators can imitate vintage video game consoles. Emulators are available to simulate consoles like the Super Nintendo or Sega Genesis, letting you play classic games without the original hardware. These emulators open games saved as .ROM files, which store an exact copy of the data from the original game cartridge or disc.

The Nintendo Switch includes emulators for older consoles like the Super Nintendo
The Nintendo Switch includes emulators for older consoles like the Super Nintendo

Emulation software can also simulate specific pieces of hardware instead of an entire platform. The most common use for this type of emulation is a disc drive emulator, which allows you to mount a disk image file (for example, an .ISO file in Windows or a .DMG file on macOS) as if you were connecting an external disk or inserting it into an optical drive. Software developers often use these files to distribute software installers. Computer users may also create backup copies of their discs in case of physical damage.

Compared to Virtualization

Emulation is similar to virtualization — both types of technology allow a host computer to run another platform's operating system and applications within a software environment. However, virtualization is easier to achieve.

Virtualization requires that the underlying hardware of the host and guest environments are the same, since virtualization software passes hardware calls from the virtual machine to the physical hardware. In an emulated environment, the emulator must instead translate those hardware calls from what the guest platform expects to what the host can provide. This requires that the host computer be considerably more powerful than the guest system it is emulating to match the same level of performance.

Updated March 27, 2023 by Brian P.

quizTest Your Knowledge

Which statement best describes a protocol?

A
It is a standard set of rules that defines how devices communicate with each other.
0%
B
It is a programming language used to create webpages.
0%
C
It is an algorithm designed to encrypt and decrypt data.
0%
D
It is a firewall that prevents unauthorized access to systems on a network.
0%
Correct! Incorrect!     View the Protocol definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of Emulation on this page is an original definition written by the TechTerms.com team. If you would like to reference this page or cite this definition, please use the green citation links above.

The goal of TechTerms.com is to explain computer terminology in a way that is easy to understand. We strive for simplicity and accuracy with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us.

Sign up for the free TechTerms Newsletter

How often would you like to receive an email?

You can unsubscribe or change your frequency setting at any time using the links available in each email.

Questions? Please contact us.