Tue oct 5
gdb practice in class
Work through using gdb to look at small.c , in detail;
my notes and the files are attached.
(Note that these files and my notes from runs on a Mac intel core i7; your mileage may vary.)
bomb lab
Discuss graded "bomblab" project:
- Due one week from today, and is only assignment this week. (Extensions ... we'll see.)
- Write a paper describing/explaining the disassembled x86 code.
- Evaluation primarily on a paper, not just "solving" it per se (although as much as you can would be great).
- Discuss in the paper as much x86 stuff as you can from the last few weeks.
This is not group work, nor should you ask for online help. You can, if you'd like,
work through my small.c code with other people's help. But don't discuss the bomblab
with other until after next Tues.
If you have questions, ask me.
# You can run the bomb and gdb on cs. (It may run elsewhere, if you have a generic x86 linux box.)
# log in with campus username/password; talk to me if you have issues
$ ssh username@cs.marlboro.edu # fill in your campus email username
# Make a directory to work on it, and copy to your home folder.
$ mkdir bomblab; cd bomblab
$ cp /var/www/cs/htdocs/courses/fall2010/systems/bomblab/bomb* .
$ ls
bomb bomb.c
# Look at (some of) the code. (Or copy elsewhere to look at it.)
$ more bomb.c
/*********
* Dr Evil's Insidious Bomb, ...
# Blow yourself up.
$ ./bomb
Welcome to my fiendish little bomb. You have 6 phases with
which to blow yourself up. Have a nice day!
1234
BOOM!!!
The bomb has blown up.
# Run gdb on it, and figure out what's going on.
$ gdb bomb
(gdb) # good luck ...
And we're off ...