Through emulation of hardware and virtualization, applications can be developed and tested even before the developer can lay hands on the physical hardware. This enables the developer to get started with a project without having to worry about the availability of processor modules and development kits.