CSci 1901: Working Remotely
See Also:
Throughout the semester, you may need to work on your lab assignment outside of
the two-hour lab session. There are computer labs in the EE/CS building that
you are able to use: EE/CS 4-250 (large lab) and 4-240 (smaller lab where office
hours are held). In addition, there are tools available to connect to the
ITLabs machines remotely:
Using Linux, Unix, or MacOS X
If you are using a Unix-type system, you can easily use X11 forwarding to run
graphical applications on a remote machine. Files you save in that application
will be saved on the remote machine (your ITLabs directory). To use this
functionality, do the following:
- Open a terminal. (Should use 'xterm' on MacOS.)
- Type:
ssh -X username@machinename.itlabs.umn.edu
Replace username
with your ITLabs login name.
Replace machinename
with any Linux machine name on
the ITLabs network. The ITLabs web site has a
complete listing
of the available machines.
Note: MacOS 10.4 (Tiger) may require that you use -Y
rather than -X
. If you have errors running certain
applications from other operating systems, try this as well.
- You may now run any application as though you were at that machine. You
should remember to include an ampersand (&) when launching a program that
runs in a graphical interface so that you are still able to use the
terminal.
Example: emacs lab2.scm &
Using Windows
There are a number of options to connect to the ITLabs machines if you are
running Windows at home:
- PuTTY:
PuTTY is a free implementation of Telnet and SSH for Win32 and Unix
platforms, along with an xterm terminal emulator.
[Free; Text-Based, but can be used with other tools to load graphical programs.]
- OpenSSH for Windows:
OpenSSH for Windows is a free package that installs a minimal OpenSSH
server and client utilities in the Cygwin package without needing the
full Cygwin installation.
[Free; Text-Based; Can be used to transfer files using secure file transfer.]
- Cygwin/X:
Cygwin/X is a port of the X Window System to the Microsoft Windows
family of operating systems. Cygwin/X consists of an X Server, X
libraries, and nearly all of the standard X clients, such as xterm,
xhost, xdpyinfo, xclock, and xeyes. Cygwin/X, as the name implies, uses
the Cygwin project which provides a UNIX-like API to Xlib and X clients,
thereby minimizing the amount of porting required.
--
Using Remote Applications with Cygwin/X
[Free; Not Currently Maintained]
- XLiveCD:
XLiveCD allows users of Microsoft Windows to connect to remote Unix
computers, run graphical applications and have the graphics displayed on
their desktops. The software runs from the CD without being installed.
Note: This hasn't been tested, but seems to be an interesting method to try.
Please post on the forums if you try it.
[Free]
Certain implementations of Scheme are available for Windows as well. To use
these, you'll need the ability to transfer files from your ITLabs account and
your home machine. This can be accomplished by using sftp
from one
of the Linux/Unix environments listed above, using a file transfer client that
is able to connect via SSH, or by using email.
While Scheme has a standard set of commands, not all distributions implement
all of them, and most implement non-standard features. You should always make
sure to test your code on the ITLabs machines using STK.
Some of the options for Windows include:
- STk:
STk is a free R4RS Scheme interpreter which can access the Tk
graphical package. Concretely, it can be seen as the standard Tk package
where Tcl has been replaced by a Scheme interpreter.
[Free; Not Maintained; Used in Class]
- MIT\GNU Scheme
(download site):
MIT/GNU Scheme is a complete programming environment that runs on many
unix platforms, as well as Microsoft Windows and IBM OS/2. It features a
rich runtime library, a powerful source-level debugger, a native-code
compiler, and an integrated Emacs-like editor.
[Free]
- DrScheme:
DrScheme is an interactive, integrated, graphical programming
environment for the Scheme, MzScheme, and MrEd programming languages.
DrScheme provides source highlighting for syntax and run-time errors.
[Free]
- More implementations are listed on the Scheme Help Page.