Emulation models other systems via software. For example, emulating an ARM smart phone processor on a computer based on an Intel processor. Many other examples exist. Emulation is especially prevalent in Network Function Virtualisation (NFV) were network devices such as switches can be emulated in software on generic computer hardware.