Emulation as a Service
Up to now emulation has been seen as domain reserved for technical experts. Furthermore, emulation did not scale well due to the laborious preparation and technical setup procedures. Therefore, a scalable emulation service model is required: Emulation as a Service (EaaS).
The fundamental building block of an EaaS architecture are abstract Emulation Components to standardize deployment and to hide individual emulator complexity. Each emulation component encapsulates a specific emulator type as an abstract component with a unified set of software interfaces (API). This way, different classes of emulators become interoperable, e.g. could be interchanged or interconnected. Furthermore, individual emulation components can be efficiently deployed in large-scale cluster or Cloud infrastructures.
Currently, emulation components for all major past and present desktop systems, e.g. PPC, m68k, Intel-based x86, etc., and major operating-systems, e.g. OS/2, MS Windows, Mac OS 7 and newer, etc., are available for deployment.
Scalable Emulation Services
To become scalable and cost-effective, emulation components need to be deployed only when needed. For this, a suitable framework for hardware- and software-deployment is required. Currently bwFLA supports MAAS/Juju as well as OpenStack.