Before you begin...
(15-410 Software Setup Guide)
The "gold standard" software environment for working on projects for
this class is the Linux installed on cluster machines in Gates-Hillman,
Wean Hall, West Wing, and various other places
This is the environment we will use to grade your work, so it is important
that you develop and test your code in that environment.
In the past some students spent substantial energy on attempting to replicate
randomly-selected parts of that environment (compiler/linker/debugger toolchain,
libraries, assorted utilities, and a Simics installation) on personal machines.
This often spilled over to involve members of the course staff, and it was
frequently the case that a student would set up an environment that would work
in many situations but mysteriously fail late in the semester.
We recommend that students use Linux machines in on-campus clusters,
augmented by remotely accessing campus Linux machines via SSH,
or else run a copy of Andrew Linux in a virtual machine.
Cluster Linux Machines
If you are using a Linux machine in a cluster supported by SCS/Computing Services,
and have followed the Project Zero directions for ensuring that
/afs/cs.cmu.edu/academic/class/15410-s16/bin is on your $PATH.
you should be able to launch Simics from a terminal window via the appropriate
shell script, e.g., simics46.
SSH into LINUX.ANDREW from a Linux or OS X machine
If you are on campus, or "near" campus (in a network-latency sense),
you can probably work reasonably effectively over an SSH connection to
a machine in the LINUX.ANDREW.CMU.EDU pool of cycle servers.
Please don't run Simics on more than one LINUX.ANDREW machine at a time,
or run multiple copies on a single machine.
To use Simics via SSH, you will need to invoke ssh with the -X
and/or -Y flags (consult the SSH documentation).
SSH into LINUX.ANDREW from a non-Unix machine
To make this work you will need an SSH client and also an X Windows
package. Consult local enthusiast users of the OS of your choice for advice.
Run Andrew Linux as a virtual machine on your own computer
If you have a virtual machine monitor such as VirtualBox, QEMU/KVM,
Parallels, HyperV, etc., installed on a personal machine, it may be
possible for you to run Andrew Linux in a VM.
Follow our directions. Please fill out
the feedback form on that page! The success of this option is in