Emulation – a Viable Preservation Strategy

Total Page:16

File Type:pdf, Size:1020Kb

Emulation – a Viable Preservation Strategy Emulation – a viable preservation strategy Authors : Jeffrey van der Hoeven, Hilde van Wijngaarden (KB) : Remco Verdegem, Jacqueline Slats (Nationaal Archief) Organisations : The National Library of the Netherlands/Koninklijke Bibliotheek : Nationaal Archief of the Netherlands Date of creation : 18 January 2005 Date of last update : 20 June 2005 Version : 1.4 2 I. Table of contents 1. Introduction .................................................................................................................................... 3 2. Current situation ............................................................................................................................. 5 2.1. The National Library of the Netherlands ............................................................................... 5 2.2. The Nationaal Archief of the Netherlands ............................................................................. 6 2.3. What is emulation? ................................................................................................................ 7 2.3.1. Emulation levels............................................................................................................ 7 2.3.2. Practices ........................................................................................................................ 8 3. The emulation project................................................................................................................... 10 3.1. Criteria for the project.......................................................................................................... 10 3.2. Dimensions of Scope ........................................................................................................... 10 3.2.1. Format/Object types .................................................................................................... 10 3.2.2. Target platform............................................................................................................ 12 3.2.3. Significant properties .................................................................................................. 12 3.2.4. Host platform............................................................................................................... 12 3.2.5. Enabling future reuse .................................................................................................. 13 3.3. Set of choices ....................................................................................................................... 13 4. Emulation research ....................................................................................................................... 14 4.1. Evaluating existing emulators.............................................................................................. 14 4.2. Approaches for emulation in digital preservation................................................................ 16 4.2.1. Stacked emulation ....................................................................................................... 16 4.2.2. Migrated emulation ..................................................................................................... 17 4.2.3. Emulation Virtual Machine......................................................................................... 18 4.2.4. UVC-based emulation................................................................................................. 19 4.3. Conceptual model: modular emulation................................................................................ 21 4.3.1. Universal Virtual Machine.......................................................................................... 22 4.3.2. Modular emulator........................................................................................................ 22 4.3.3. Component Library ..................................................................................................... 23 4.3.4. Emulator specification................................................................................................. 23 4.3.5. Controller .................................................................................................................... 25 4.3.6. Preservation Manager (optional)................................................................................. 25 4.3.7. Practical steps.............................................................................................................. 26 4.4. Environment and object preservation .................................................................................. 27 4.4.1. Interactive multi-media applications........................................................................... 27 4.4.2. Database systems......................................................................................................... 29 4.4.3. PDF documents ........................................................................................................... 31 5. Planning and project organisation ................................................................................................ 33 5.1. Step 1: Set up test environment............................................................................................ 33 5.2. Step 2: Define, describe and prepare test objects................................................................. 34 5.3. Step 3: Emulate the RWS .................................................................................................... 34 5.4. Step 4: Insert a Virtual Machine layer ................................................................................. 35 5.5. Step 5: Convert VM to a Universal Virtual Machine layer ................................................. 35 5.6. Project organisation ............................................................................................................. 36 6. References .................................................................................................................................... 37 7. Glossary........................................................................................................................................ 39 Appendix A: Reference Workstation (RWS) PLATFORM-10 ............................................................ 41 Appendix B: emulator platform specifications...................................................................................... 44 KB / Nationaal Archief emulation project – emulation, a viable preservation strategy 3 1. Introduction Digital preservation does not end with the careful storage of digital objects, the union of all objects that are born-digital or digitised like digital documents, electronic records and software programs. Keeping them accessible requires a continuous R&D effort working out strategies for permanent access. The usability of digital objects is threatened by the rapid innovations in computer technology. New systems and software supersede each other faster every year, making existing technology obsolete. This is becoming a problem in everyday life, but is experienced more specifically in the cultural heritage sector, whose main focus is the long term. Permanent access strategies can roughly be divided into two groups: migration and emulation. Migration is aimed at the digital object itself, and aims at changing the object in such a way that software and hardware developments will not affect its availability. By changing or updating the format of an object, it is possible to render these objects in a current hard- and software environment. Emulation does not focus on the digital object, but on the original environment in which the object is rendered. It aims at recreating an environment in which the digital object can be rendered in its authentic form. The choice for a strategy depends on several different arguments. First of all, the strategy should be consistent with the objectives of the organization. The Koninklijke Bibliotheek (KB) states that every publication it preserves should remain accessible and interpretable in the way it was originally meant by the publisher. In the case of electronic records archived at the Nationaal Archief of the Netherlands, the requirements are determined by the business process in which the record played a role and by the requisite legal context (see Archival Law 1995 and the Regulation on the Arrangement and Accessibility of Records [Archiefwet]). A second aspect of the decision for a certain strategy depends on the requirements of the future user. Defining all requirements at the time of preservation is impossible, but we can try to consider what future user scenarios will be. When a future user wants to browse through an old website, the representation plays an important role. This representation makes the digital object and is defined by five aspects: content, structure, context, appearance and behaviour, as shown in figure 1.1. When an object should be recreated to be experienced as it was in the past, the object should be reconstructed as accurately as possible. For this, we need the original environment, which can only be recreated using either original hard- and software or an emulator. Computer file(s) Representation Offers: - structure Software User - content (interpret) - context - appearance Hardware - behaviour Figure 1.1: Representation model KB / Nationaal Archief emulation project – emulation, a viable preservation strategy 4 Finally, the strategy is related to the type of digital object. For relatively
Recommended publications
  • Virtual Machine Technologies and Their Application in the Delivery of ICT
    Virtual Machine Technologies and Their Application In The Delivery Of ICT William McEwan accq.ac.nz n Christchurch Polytechnic Institute of Technology Christchurch, New Zealand [email protected] ABSTRACT related areas - a virtual machine or network of virtual machines can be specially configured, allowing an Virtual Machine (VM) technology was first ordinary user supervisor rights, and it can be tested implemented and developed by IBM to destruction without any adverse effect on the corporation in the early 1960's as a underlying host system. mechanism for providing multi-user facilities This paper hopes to also illustrate how VM in a secure mainframe computing configurations can greatly reduce our dependency on environment. In recent years the power of special purpose, complex, and expensive laboratory personal computers has resulted in renewed setups. It also suggests the important additional role interest in the technology. This paper begins that VM and VNL is likely to play in offering hands-on by describing the development of VM. It practical experience to students in a distance e- discusses the different approaches by which learning environment. a VM can be implemented, and it briefly considers the advantages and disadvantages Keywords: Virtual Machines, operating systems, of each approach. VM technology has proven networks, e-learning, infrastructure, server hosting. to be extremely useful in facilitating the Annual NACCQ, Hamilton New Zealand July, 2002 www. Annual NACCQ, Hamilton New Zealand July, teaching of multiple operating systems. It th offers an alternative to the traditional 1. INTRODUCTION approaches of using complex combinations Virtual Machine (VM) technology is not new. It was of specially prepared and configured OS implemented on mainframe computing systems by the images installed via the network or installed IBM Corporation in the early 1960’s (Varian 1997 pp permanently on multiple partitions or on 3-25, Gribben 1989 p.2, Thornton 2000 p.3, Sugarman multiple physical hard drives.
    [Show full text]
  • OLD PRETENDER Lovrenc Gasparin, Fotolia
    COVER STORY Bochs Emulator Legacy emulator OLD PRETENDER Lovrenc Gasparin, Fotolia Gasparin, Lovrenc Bochs, the granddaddy of all emulators, is alive and kicking; thanks to regular vitamin jabs, the lively old pretender can even handle Windows XP. BY TIM SCHÜRMANN he PC emulator Bochs first saw the 2.2.6 version in the Universe reposi- box). This also applies if you want to the light of day in 1994. Bochs’ tory; you will additionally need to install run Bochs on a pre-Pentium CPU, such Tinventor, Kevin Lawton, distrib- the Bximage program. (Bximage is al- as a 486. uted the emulator under a commercial li- ready part of the Bochs RPM for open- After installation, the program will cense before selling to French Linux ven- SUSE.) If worst comes to worst, you can simulate a complete PC, including CPU, dor Mandriva (which was then known always build your own Bochs from the graphics, sound card, and network inter- as MandrakeSoft). Mandriva freed the source code (see the “Building Bochs” face. The virtual PC in a PC works so emulator from its commercial chains, re- leasing Bochs under the LGPL license. Building Bochs If you prefer to build your own Bochs, or an additional --enable-ne2000 parameter Installation if you have no alternative, you will first to configure. The extremely long list of Bochs has now found a new home at need to install the C++ compiler and de- parameters in the user manual [2] gives SourceForge.net [1] (Figure 1). You can veloper packages for the X11 system. you a list of available options.
    [Show full text]
  • Android Studio Development Essentials Android 7 Edition Android Studio Development Essentials – Android 7 Edition
    Android Studio Development Essentials Android 7 Edition Android Studio Development Essentials – Android 7 Edition ISBN-13: 978-1535425339 © 2016 Neil Smyth. All Rights Reserved. This book is provided for personal use only. Unauthorized use, reproduction and/or distribution strictly prohibited. All rights reserved. The content of this book is provided for informational purposes only. Neither the publisher nor the author offers any warranties or representation, express or implied, with regard to the accuracy of information contained in this book, nor do they accept any liability for any loss or damage arising from any errors or omissions. This book contains trademarked terms that are used solely for editorial purposes and to the benefit of the respective trademark owner. The terms used within this book are not intended as infringement of any trademarks. Rev: 1.0 Table of Contents 1. Introduction ......................................................................................................................................... 1 1.1 Downloading the Code Samples ........................................................................................................... 2 1.2 Download the eBook ............................................................................................................................ 2 1.3 Feedback .............................................................................................................................................. 2 1.4 Errata ...................................................................................................................................................
    [Show full text]
  • Introduction to Virtualization Virtualization
    Introduction to Virtualization Prashant Shenoy Computer Science CS691D: Hot-OS Lecture 2, page 1 Virtualization • Virtualization: extend or replace an existing interface to mimic the behavior of another system. – Introduced in 1970s: run legacy software on newer mainframe hardware • Handle platform diversity by running apps in VMs – Portability and flexibility Computer Science CS691D: Hot-OS Lecture 2, page 2 Types of Interfaces • Different types of interfaces – Assembly instructions – System calls – APIs • Depending on what is replaced /mimiced, we obtain different forms of virtualization Computer Science CS691D: Hot-OS Lecture 2, page 3 Types of Virtualization • Emulation – VM emulates/simulates complete hardware – Unmodified guest OS for a different PC can be run • Bochs, VirtualPC for Mac, QEMU • Full/native Virtualization – VM simulates “enough” hardware to allow an unmodified guest OS to be run in isolation • Same hardware CPU – IBM VM family, VMWare Workstation, Parallels,… Computer Science CS691D: Hot-OS Lecture 2, page 4 Types of virtualization • Para-virtualization – VM does not simulate hardware – Use special API that a modified guest OS must use – Hypercalls trapped by the Hypervisor and serviced – Xen, VMWare ESX Server • OS-level virtualization – OS allows multiple secure virtual servers to be run – Guest OS is the same as the host OS, but appears isolated • apps see an isolated OS – Solaris Containers, BSD Jails, Linux Vserver • Application level virtualization – Application is gives its own copy of components that are not shared • (E.g., own registry files, global objects) - VE prevents conflicts – JVM Computer Science CS691D: Hot-OS Lecture 2, page 5 Examples • Application-level virtualization: “process virtual machine” • VMM /hypervisor Computer Science CS691D: Hot-OS Lecture 2, page 6 The Architecture of Virtual Machines J Smith and R.
    [Show full text]
  • North Carolina Department of Cultural Resourcesdivision of Archives And
    North Carolina Department of Cultural Resources State Library of North Carolina State Archives of North Carolina Best Practices for Digital Permanence Version 1.0 July 2013 Contents 1 Introduction ........................................................................................................................... 2 1.1 North Carolina Statutes .............................................................................................................. 2 1.2 What do we mean by Permanent? ............................................................................................ 3 1.3 Definitions ..................................................................................................................................... 3 2 Threats to Permanence of Digital Materials ........................................................................ 5 2.1 Application Obsolescence .......................................................................................................... 5 2.2 Corruption ..................................................................................................................................... 5 2.3 Completeness .............................................................................................................................. 6 2.4 Findability ...................................................................................................................................... 6 2.5 Mutability of Electronic Records ...............................................................................................
    [Show full text]
  • Virtual Alpha User Guide for Avanti, Avantiflex, & Freeaxp 05-JAN-2018 Version 3.0: This Manual Covers All Releases of Avanti™, Avantiflex™ and Freeaxp™
    Migration Specialties International, Inc. 217 West 2nd Street, Florence, CO 81226-1403 +1 719-784-9196 E-mail: [email protected] www.MigrationSpecialties.com Continuity in Computing Virtual Alpha User Guide for Avanti, AvantiFlex, & FreeAXP 05-JAN-2018 Version 3.0: This manual covers all releases of Avanti™, AvantiFlex™ and FreeAXP™. This manual describes how to install and use Avanti, AvantiFlex, and FreeAXP, Migration Specialties' AlphaServer 400 hardware emulators. AvantiFlex and Avanti are commercial products that require purchase of a product license. AvantiFlex and Avanti include 30 days of manufacturer support after purchase and the option to buy an extended support contract. FreeAXP can be used for personal and commercial purposes. FreeAXP is unsupported without purchase of a support contract. If you have questions or problems with FreeAXP and have not purchased a support contract, visit the FreeAXP forum at the OpenVMS Hobbyist web site. Avanti & Avanti Flex Links Product Info: http://www.migrationspecialties.com/Emulator-Alpha.html User Guide: http://www.migrationspecialties.com/pdf/VirtualAlpha_UserGuide.pdf Release Notes: http://www.migrationspecialties.com/pdf/VirtualAlpha_ReleaseNotes.pdf License: http://www.migrationspecialties.com/pdf/AvantiLicense.pdf SPD: http://www.migrationspecialties.com/pdf/Avanti_SPD.pdf Pricing Guide: http://www.migrationspecialties.com/pdf/VirtualAlphaPricingGuide.pdf FreeAXP Links Product Info: http://www.migrationspecialties.com/FreeAXP.html User Guide: http://www.migrationspecialties.com/pdf/VirtualAlpha_UserGuide.pdf Release Notes: http://www.migrationspecialties.com/pdf/VirtualAlpha_ReleaseNotes.pdf License: http://www.migrationspecialties.com/pdf/FreeAXP_License.pdf SPD: http://www.migrationspecialties.com/pdf/FreeAXP_SPD.pdf User Forum: http://www.vmshobbyist.com/forum/viewforum.php?forum_id=163 Download: http://www.migrationspecialties.com/FreeAXP.html Copyright 2018, Migration Specialties.
    [Show full text]
  • Virtualizing Servers with Xen
    Virtualization Xen Features Escalabilidade Performance QoS Implementation Future Virtualizing servers with Xen Evaldo Gardenali VI International Conference of Unix at UNINET Virtualization Xen Features Escalabilidade Performance QoS Implementation Future Outline Virtualization Xen Features Scalability Performance Quality of Service Implementation Future of Xen Virtualization Xen Features Escalabilidade Performance QoS Implementation Future Overview Why? Support heterogeneous environments: Linux r 2.4 e 2.6, NetBSD r , Plan9 r FreeBSD r , OpenSolaris r Consolidate work Legacy Systems Gradual Upgrade Service Isolation Quality of Service Isolated testing and development Ease of administration Ease of relocation and migration Virtualization Xen Features Escalabilidade Performance QoS Implementation Future Virtualization Techniques Single System Image: Ensim r , Vservers, CKRM, VirtuozzoTM, BSD r jail(), Solaris r Zones √ Groups processes in “resource containers” Hard to get isolation × Emulation: QEMU, Bochs √ Portable Extremely slow × Virtualization: VMware r , VirtualPC r √ Runs unmodified Operating Systems Virtualizing x86 is inefficient × User Mode Kernel: User Mode Linux, CoLinux Guest runs as a process on the host OS × Low performance (I/O, context switches) × Paravirtualization: Xen r , Denali √ Excellent performance Requires port to special architecture × Virtualization Xen Features Escalabilidade Performance QoS Implementation Future Virtualization Techniques Single System Image: Ensim r , Vservers, CKRM, VirtuozzoTM, BSD r jail(), Solaris
    [Show full text]
  • Virtualization of Linux Based Computers: the Linux-Vserver Project
    VirtualizationVirtualization ofof LinuxLinux basedbased computers:computers: thethe LinuxLinux--VServerVServer projectproject BenoBenoîîtt desdes Ligneris,Ligneris, Ph.Ph. D.D. [email protected] Objectives:Objectives: Objectives:Objectives: 1)1) PresentPresent thethe availableavailable programsprograms thatthat cancan provideprovide aa virtualizationvirtualization ofof LinuxLinux computerscomputers withwith differentdifferent technologies.technologies. Objectives:Objectives: 1)1) PresentPresent thethe availableavailable programsprograms thatthat cancan provideprovide aa virtualizationvirtualization ofof LinuxLinux computerscomputers withwith differentdifferent technologies.technologies. 2)2) FocusFocus onon LinuxLinux--VServers:VServers: aa veryvery lightweightlightweight andand effectiveeffective technologytechnology forfor thethe regularregular LinuxLinux useruser notnot interstedintersted inin KernelKernel hacking.hacking. PlanPlan PlanPlan ● IntroductionIntroduction PlanPlan ● IntroductionIntroduction ● OverviewOverview ofof thethe availableavailable technologytechnology PlanPlan ● IntroductionIntroduction ● OverviewOverview ofof thethe availableavailable technologytechnology ● ClassificationClassification ofof thethe problems:problems: usageusage criteriacriteria PlanPlan ● IntroductionIntroduction ● OverviewOverview ofof thethe availableavailable technologytechnology ● ClassificationClassification ofof thethe problems:problems: usageusage criteriacriteria ● ComparativeComparative studystudy ofof thethe existingexisting
    [Show full text]
  • Parallels Desktop® Upgrade to Windows 7 User's Guide
    Parallels Desktop® Upgrade to Windows 7 User's Guide Copyright © 1999-2010 Parallels Holdings, Ltd. and its affiliates. All rights reserved. Parallels Holdings, Ltd. c/o Parallels International GMbH. Parallels International GmbH Vordergasse 49 CH8200 Schaffhausen Switzerland Tel: + 49 (6151) 42996 - 0 Fax: + 49 (6151) 42996 - 255 www.parallels.com Copyright © 1999-2010 Parallels Holdings, Ltd. and its affiliates. All rights reserved. This product is protected by United States and international copyright laws. The product’s underlying technology, patents, and trademarks are listed at http://www.parallels.com/trademarks. Microsoft, Windows, Windows Server, Windows NT, Windows Vista, and MS-DOS are registered trademarks of Microsoft Corporation. Linux is a registered trademark of Linus Torvalds. Mac is a registered trademark of Apple, Inc. All other marks and names mentioned herein may be trademarks of their respective owners. 3 Contents Introduction 5 About Parallels Desktop Upgrade to Windows 7......................................................................................... 5 About This Guide......................................................................................................................................... 6 Organization of This Guide .............................................................................................................. 6 Documentation Conventions............................................................................................................. 7 Getting Help................................................................................................................................................
    [Show full text]
  • Emulation Framework Test Report Release 1.1.0 (PDF
    Keeping Emulation Environments Portable FP7-ICT-231954 Test description and results document for Emulation Framework Deliverable number D2.4 Nature Report Dissemination level PU (public) Delivery date Due: M35 (December 2011) Actual: M36 (January 2012) Status Final Work package number WP2 Lead beneficiary KB Author(s) Bart Kiers (KB) Jeffrey van der Hoeven (KB) D2.4 Test description and results document for Emulation Framework Document history Revisions Version Date Author Changes 0.1 21-04-2011 Bart Kiers (KB) Initial version 0.2 10-12-2011 Bart Kiers (KB) Added test results 0.3 23-12-2011 Bart Kiers (KB) Added notes from Jeffrey about feedback KEEP workshops. Made it review ready 0.4 30-12-2011 Bart Kiers (KB) Added review comments from Winfried Bergmeyer 0.5 05-01-2012 Bart Kiers (KB) Added review comments from Marcus Dindorf 0.6 10-01-2012 Jeffrey van der Hoeven (KB) Adjusted template to standard deliverable output 1.0 13-01-2012 Jeffrey van der Hoeven (KB) Finalised document 1.1 17-01-2012 Jeffrey van der Hoeven (KB) Changed wording about KVM KEEP_WP2_D2.4 2/38 D2.4 Test description and results document for Emulation Framework Reviews Date Name Result 27-12-2011 Winfried Bergmeyer (CSM) Approved with minor changes 30-12-2011 Marcus Dindorf (DNB) Approved with major changes Signature/Approval Approved by (signature) Date Accepted by at European Commission (signature) Date KEEP_WP2_D2.4 3/38 D2.4 Test description and results document for Emulation Framework Executive Summary This document describes how tests with the Emulation Framework (EF) version 1.0.0 were performed and the results of those tests.
    [Show full text]
  • Virtualization Technologies Overview Course: CS 490 by Mendel
    Virtualization technologies overview Course: CS 490 by Mendel Rosenblum Name Can boot USB GUI Live 3D Snaps Live an OS on mem acceleration hot of migration another ory runnin disk alloc g partition ation system as guest Bochs partially partially Yes No Container s Cooperati Yes[1] Yes No No ve Linux (supporte d through X11 over networkin g) Denali DOSBox Partial (the Yes No No host OS can provide DOSBox services with USB devices) DOSEMU No No No FreeVPS GXemul No No Hercules Hyper-V iCore Yes Yes No Yes No Virtual Accounts Imperas Yes Yes Yes Yes OVP (Eclipse) Tools Integrity Yes No Yes Yes No Yes (HP-UX Virtual (Integrity guests only, Machines Virtual Linux and Machine Windows 2K3 Manager in near future) (add-on) Jail No Yes partially Yes No No No KVM Yes [3] Yes Yes [4] Yes Supported Yes [5] with VMGL [6] Linux- VServer LynxSec ure Mac-on- Yes Yes No No Linux Mac-on- No No Mac OpenVZ Yes Yes Yes Yes No Yes (using Xvnc and/or XDMCP) Oracle Yes Yes Yes Yes Yes VM (manage d by Oracle VM Manager) OVPsim Yes Yes Yes Yes (Eclipse) Padded Yes Yes Yes Cell for x86 (Green Hills Software) Padded Yes Yes Yes No Cell for PowerPC (Green Hills Software) Parallels Yes, if Boot Yes Yes Yes DirectX 9 Desktop Camp is and for Mac installed OpenGL 2.0 Parallels No Yes Yes No partially Workstati on PearPC POWER Yes Yes No Yes No Yes (on Hypervis POWER 6- or (PHYP) based systems, requires PowerVM Enterprise Licensing) QEMU Yes Yes Yes [4] Some code Yes done [7]; Also supported with VMGL [6] QEMU w/ Yes Yes Yes Some code Yes kqemu done [7]; Also module supported
    [Show full text]
  • State of the Port to X86-64
    OpenVMS State of the Port to x86-64 October 6, 2017 1 Executive Summary - Development The Development Plan consists of five strategic work areas for porting the OpenVMS operating system to the x86-64 architecture. • OpenVMS supports nine programming languages, six of which use a DEC-developed proprietary backend code generator on both Alpha and Itanium. A converter is being created to internally connect these compiler frontends to the open source LLVM backend code generator which targets x86-64 as well as many other architectures. LLVM implements the most current compiler technology and associated development tools and it provides a direct path for porting to other architectures in the future. The other three compilers have their own individual pathways to the new architecture. • Operating system components are being modified to conform to the industry standard AMD64 ABI calling conventions. OpenVMS moved away from proprietary conventions and formats in porting from Alpha to Itanium so there is much less work in these areas in porting to x86-64. • As in any port to a new architecture, a number of architecture-defined interfaces that are critical to the inner workings of the operating system are being implemented. • OpenVMS is currently built for Alpha and Itanium from common source code modules. Support for x86-64 is being added, so all conditional assembly directives must be verified. • The boot manager for x86-64 has been upgraded to take advantage of new features and methods which did not exist when our previous implementation was created for Itanium. This will streamline the entire boot path and make it more flexible and maintainable.
    [Show full text]