SSP 1998 Project Summary: | |
Hon Yau, EPCC
At the time EPIC was first designed, there was practiaclly no alternative approach to achieve the same functionality. Moreover, as most of the applications and course material used by EPCC was Unix-based (editors: vi, emacs; compilers: make and f90, etc) these tools were built into the EPIC courses. Clients were thus exclusively restricted to being Unix based and this bias was exploited in EPIC's Perl driver codes, particularly in the use of system calls to Unix utilities and packages. Also, the original design led to a protocol whereby an EPIC command embedded in the HTML of an EPIC-friendly course activated an EPIC task that could potentially be used to fire up any desired (Unix) application. This necessitated the use of inelegant HTTP messages which had to be sent to the EPCC web server and back to the client browser; undesirable for generating extra communications but necessary to achieve the desired functionality.
For the SSP-1997 programme, a project was undertaken to investigate and rectify some of the above shortcominga, by rewriting the EPIC code in Java instead of Perl. This exploited the platform independence of Java bytecodes, and the rich networking class libraries bundled with the Java Development Kit. This work led to the idea of using a proxy server running on each client, which would intercept HTTP EPIC requests to the EPCC web server, examine whether the request could be handled locally (ie it is an EPIC command or a request for a web page), and perform the required action locally. This new design removed the prior version's communications with the EPCC web server to perform even the simplest EPIC command.
The 1997 SSP project in turn led to the writing of the Java package "EPIC-2001" by one of the project proposers, which contains a proxy server class, and an EPIC specific layer. This package has been written to minimise the use of operating system specific function calls, but as discussed above, is still limited by the use of Unix applications by the EPIC courses themselves.
It is increasingly important for EPCC to be in a position to be able to exploit new environments, such as Windows 95/98 or NT, if it is to be able to distribute its existing distance learning courses, and any new potential courses (even Windows NT/95/98 specific ones), to as wide a forum as possible. Moreover making EPIC available within this mainstream environment would enable other university courses to be ported to use the EPIC framework. Currently there is a strong drive within the University to provide electronic versions of taught courses or even part of a distance learning package.
The goals of this project then are mainly to investigate the use of the PC environment for the running of EPIC. In particular, it is suggested that two of the existing EPCC-TEC courses are ported to work on the PC environment using EPIC-2001. These two proposed courses are:
Webpage maintained by mario@epcc.ed.ac.uk |