View Source

{toc}

h2. About GRATE

GRATE is an acronym for Global Remote Access to Emulation-Services. The GRATE Demonstrator was developed to demonstrate the accessibility of 'aged' digital objects - e.g. text documents - through emulated systems using the Internet (Webbrowser). GRATE is developed as a component system to allow easy user access to emulation services.

Emulation as a longterm preservation strategy has quite some prerequisites to met to be actually deployed in work flows. First case GRATE was implemented as a demonstration system for the feasibility of easy end user access to ancient software environments. Run as a standalone system GRATE realizes the file open and accessing feature of traditional applications. Not by trying to access the object of interest directly but wrapping a set of work flows to transport the object onto the service system, repacking it to pass it into the emulated original environment.

GRATE is freeware and licensed under GPLv2 or any other appropriate license.

h2. Used Technologies

Coded in Java / PHP / Perl / [JavaScript?|planetssuite:JavaScript] , GRATE is based on the TightVNC technology and calls on the DROID / PRONOM services provided by the The National Archives of the United Kingdom

* Server OS: openSUSE 10.2 / License: ASL 2.0 / Homepage: [http://de.opensuse.org|http://de.opensuse.org]

* Apache HTTP Server with PHP and Perl support via CGI-interface / Standard LAMP System / Apache License v2.0, PHP License, GPL, Artistic License / See [http://www.apache.org/|http://www.apache.org/] and [http://www.php.net/|http://www.php.net/] and [http://www.perl.org/|http://www.perl.org/]

* TightVNC (Server, Java Applet Viewer) / Version: 1.2.9 / Remote Desktop Software. Allows to remote exported desktops from other machines or application-GUIs via network. / The Java Applet Viewer enables the usage of the client functionality via Java enabled webbrowsers / Licence: GPL / Homepage: [http://www.tightvnc.com|http://www.tightvnc.com]

* twm / Tab Window Manager for Linux applications / Compensable with other windows manager like GNOME or KDE. / License: MIT / Homepage: [http://xwinman.org/vtwm.php|http://xwinman.org/vtwm.php]

* JRE / Version: 1.6.0 / Java Runtime Environment / Homepage: [http://java.sun.com|http://java.sun.com]

* uber-uploader / Version: 5.2 / Web-based file uploader (with a progress bar) written in PHP, Perl, Javascript / License: Mozilla Public Licence Version 1.1 / Homepage: [http://uber-uploader.sourceforge.net/|http://uber-uploader.sourceforge.net/] <br><br>

* xajax / Version: 0.2.5 / Open source PHP and Javascript library / BSD License, GNU Library or Lesser / Licence: General Public License (LGPL) / Homepage: [http://xajaxproject.org/|http://xajaxproject.org/]

* DROID / Automated batch identification of file formats / Homepage: [http://droid.sourceforge.net|http://droid.sourceforge.net]

* PRONOM / Online technical registry / Homepage: [http://www.nationalarchives.gov.uk/pronom/|http://www.nationalarchives.gov.uk/pronom/]

* Third Party Software / For the recreation of original environments software of different kind is needed. See the information on the emulation [SoftwareArchive?|planetssuite:SoftwareArchive]

* Client usage prerequisites / Platform independent system, standard Webbrowser with enabled Java Virtual Machine (JSE>= 1.4.2) / [JavaScript?|planetssuite:JavaScript] enabled

h3. GRATE (based on TightVNC) vs. other Remote Desktop technologies

The GRATE demonstration system and all of its dependend software components (the remote desktop functionality is completely based on TightVNC) are all available as open source software. The functionality of the GRATE demonstrator is not only remoting dedicated software (e.g. an emulator with a hosted Windows OS) via the Internet or other networks, but it's also used for uploading primary digital objects by users. Following, these objects can be automatically identified via services like DROID / PRONOM.

GRATE can also display metainformation about the archived secondary digital objects (like emulators, operating systems etc.). Furthermore GRATE is able to carry these objects into the emulated environments, make them available in these, and (if necessary) copy them back to the user system. Beside, GRATE demonstrates a sending of keystrokes to emulated environments. Why are the common commercial remote desktop applications does not suit the means of long term preservation especially rem emu not too well?

* Most of the other products are only available as proprietary software. Therefore, mostly no suitable interfaces are available or described.
* No source code is available for proprietary products (like Citrix Metaframe, Laplink or SUN Secure Global Desktop). Therefore the software cannot be modified in the needed form.
* The GRATE client needs no local installation. Its Java Applet can be executed easily in every Java enabled web browser.
* Open source software can be distributed without licencing fees and the development is not depended on a firm or organisation better suiting long term perspectives.

GRATE was developed following a comparison of these Remote Desktop solutions:

* Citrix Presentation Server
* SUN Secure Global Desktop
* NX [NoMachine?|planetssuite:NoMachine] / FreeNX
* Microsoft RDP
* VMware Server 2 Remote Console
* VNC

h3. Usage of the Standalone Functionality

Run as a standalone system GRATE realizes the file open and accessing feature of traditional applications or simply by running one of the preloaded dynamic digital objects. This is achieved not by trying to access the object of interest directly but wrapping a set of work flows to transport the object onto the service system, repacking it to pass it into the emulated original environment. This environment could be automatically selected by using filetype registries like PRONOM. From the point of filetype detection to the actual rendering or accessing a proper view path has to be set up: It involves the selection of some suitable rendering application which itself requires an operating system within it could be run. The operating system needs a specific hardware configuration which is especially for older computer architectures not available any more and replaced by a hardware emulator. These steps are preconfigured within GRATE as view path caches, so that the user has not to suffer any delays in setup until the object could be viewed.