ssh <NETID>@sp25-cs341-<xxx>.cs.illinois.edu
where xxx
is the VM number assigned to you.
We will only help you with your assignments on your VM. We will not debug code running elsewhere.
You are going to need to be on the campus network to be able to access your VM. If you want to make it work at home, make sure to log in to the campus VPN first before ssh’ing. See the development guide for details.
If enrolled in the class recently, you should be getting an email soon about accessing your VM. Everyone else should already have received an email with their VM’s details.
SSH is short for secure shell (secure sh). SSH is a network protocol that leverages public key cryptography in order to connect to another computer. You may have used SSH in other classes to connect to EWS.
All of you have probably heard of sudo before - it is short for super-user do, and lets you execute any command as root. You have that ability on your VM. Be careful: there is no way to faster crash your VM that throwing sudo around. VMs can only be rebooted or re-imaged by staff.
git
is a version control system. That means it keeps track of changes in code, allows you to group changes into a commit, and provides tools to manipulate commits.
layout src
gives you a text-based GUIbreak <file:line|function> [if condition]
: You can make powerful breakpoints by giving a line, but only under certain circumstances.watch (type *)0xADDRESS
: Watches an address for a read or write and tells you when it has changed – useful for locating bugs.backtrace
, bt
to see what functions you are inup
, down
goes up and down a stack frameprint
prints a variable (aliased p
). You can use p/x
to print in hex.next
executes the line and goes to the next line, runs functions without stopping.finish
finishes the function and breaks.step
executes the line and goes to the next line. If there is a function, gdb steps into the function.continue
resumes execution of your program.