Emulation and virtualisation offer a potential preservation strategy for software-based artworks by removing the artwork’s dependencies on ephemeral physical computer hardware, which is prone to a short digital life-cycle. The implementation of an emulation strategy requires the introduction of new workflows, tools and novel risk-monitoring processes.
This report identifies three conceptual layers to a description of a software-based artwork and its environment:
- Digital artefact description and configuration
- Software runtime environment and configuration
- Hardware environment
Using these layers, preservation requirements can be assessed separately for each conceptual layer, and risks identified through interdependencies between theses layers (particularly the technical interfaces between an artefact’s software and hardware environment). An emulation-based preservation strategy focuses then, on the acquisition and maintenance of software environments, respectively their instances as virtual disk images and the monitoring of technical interfaces.
Focusing on an artwork’s software environment rather than the artwork itself, highlights an interesting property of an emulation based strategy: much of the necessary work regarding emulation can be shared and standardized. While an emulation-based preservation strategy for a software-based artwork still requires a work-specific preservation plan to ensure the conceptual and technical verification process of its significant properties, work on the software and hardware environment layer (the primary concerns of an emulation-based strategy) is not work-specific. It therefore encourages the development of common practice as well as shared infrastructure and technical development. This report identifies important common tasks such as the identification and documentation of generalized emulated hardware environments and the migration of software environments between (emulated) hardware environments. It also highlights the need for systematic archiving of common software components that may form software environments. In many cases software environments can be shared among several artworks, pointing to a need for coordinated (and as a result, cost effective) efforts to keep these portable environments useable.
Emulation can also be used as a preservation tool to describe a software environment’s hardware dependencies in an operating system and platform independent way. A software environment which was successfully migrated to an emulator setup has exactly the same hardware dependencies as the emulator provides. If an external dependency is accessible through an emulator setup, the nature of this dependency and the protocol communicating with it can be documented. If it is not accessible, a significant preservation risk is made explicit and can be addressed. If a software environment has been successfully rebuilt through emulation, a complete, verified and potentially machine readable description can be generated during this process.
This research has been supported by and carried out within the framework of the PERICLES Project. PERICLES is a four-year Integrated Project funded by the European Union under its Seventh Framework Programme (ICT Call 9) and addresses work programme objective ICT-20114.3 Digital Preservation, under grant agreement no. 601138.