LogoLogo
  • What is LABDRIVE
  • Concepts
    • Architecture and overview
    • Organize your content
    • OAIS and ISO 16363
      • Understanding OAIS and ISO 16363
      • LABDRIVE support for OAIS Conformance
      • Benefits of preserving research data
      • Planning for preservation
      • ISO 16363 certification guide
      • LABDRIVE support for FAIRness
  • Get started
    • Create a data container
    • Upload content
    • Download content
    • Introduction to metadata
    • Search
    • File versioning and recovery
    • Work with data containers
    • Functions
    • Storage mode transitions
    • Jupyter Notebooks
  • Configuration
    • Archive organization
    • Container templates
    • Configure metadata
    • Users and Permissions
    • Running on premises
  • DATA CURATION AND PRESERVATION
    • Introduction
    • Information Lifecycles
    • Collecting Information needed for Re-Use and Preservation
    • Planning and Using Additional Information in LABDRIVE
    • How to deal with Additional Information
      • Representation Information
      • Provenance Information
      • Context Information
      • Reference Information
      • Descriptive Information
      • Packaging Information
      • Definition of the Designated Community(ies)
      • Preservation Objectives
      • Transformational Information Properties
    • Preservation Activities
      • Adding Representation Information
        • Semantic Representation Information
        • Structural Representation Information
        • Other Representation Information
          • Software as part of the RIN
            • Preserving simple software
              • Jupyter Notebooks as Other RepInfo
            • Preserving complex software
              • Emulation/Virtualisation
                • Virtual machines as Other RepInfo
                • Docker and other containers as Other RepInfo
              • Use of ReproZip
      • Transforming the Digital Object
      • Handing over to another archive
    • Reproducing research
    • Exploiting preserved information
  • DEVELOPER'S GUIDE
    • Introduction
    • Functions
    • Scripting
    • API Extended documentation
  • COOKBOOK
    • LABDRIVE Functions gallery
    • AWS CLI with LABDRIVE
    • Using S3 Browser
    • Using FileZilla Pro
    • Getting your S3 bucket name
    • Getting your S3 storage credentials
    • Advanced API File Search
    • Tips for faster uploads
    • File naming recommendations
    • Configuring Azure SAML-based authentication
    • Exporting OAIS AIP Packages
  • File Browser
    • Supported formats for preview
    • Known issues and limitations
  • Changelog and Release Notes
Powered by GitBook
On this page

Was this helpful?

  1. DATA CURATION AND PRESERVATION
  2. Preservation Activities
  3. Adding Representation Information
  4. Other Representation Information
  5. Software as part of the RIN

Preserving complex software

By complex software is meant software which currently requires many computers and is made up of many separate software applications, some of which may be relatively simple.

PreviousJupyter Notebooks as Other RepInfoNextEmulation/Virtualisation

Last updated 3 years ago

Was this helpful?

Complex software will consist of many separate elements specifying for example:

  • source code

  • configuration

  • build processes

  • distribution between computers

  • control processes and frameworks

  • test suites

In principle each element may be preserved as pieces of simple software, text files, etc. Even whole operating systems, particularly open source ones like the , can be built from such files, boot-strapping from a small core. It is important to understand what these core tools are in order to build the software and to be able to recognise when it is becoming impractical to re-build nd run the software.

However, in some cases the software may be encapsulated in one of many ways including:

  • Jupyter Notebooks

  • Docker and other containers as Other RepInfo

  • Virtual machines as Other RepInfo

Preserving these and other more complex software is discussed in Emulation/Virtualisation. Supplementing these tools are such as Use of ReproZip.

An important aspect of this is that once the problem of preserving these encapsulations, in particular the RINs that are needed, then, because they are so widely used, the RINs an be re-used.

Linux kernel