Computer
Systems

Fall 2018
course
site

assignments

1. getting started due Tue Sep 4

Reading

Installing

Writing (submit this through the website, showing what you did.)

2. chap 2 and C practice due Tue Sep 11

3. starting machine code due Tue Sep 18

4. continue machine code due Tue Sep 25

5. Bomb Lab ! due Thu Oct 4

Do the CMU bomb lab. The "README" and "Self Study Handout" describe what's to be done.

# On shannon
$ wget http://csapp.cs.cmu.edu/3e/bomb.tar
$ tar xf bomb.tar
$ cd bomb
$ ./bomb
Welcome to my fiendish little bomb. You have 6 phases with
which to blow yourself up. Have a nice day!
... you type here ...
BOOM!!!
The bomb has blown up.

6. stack attacks due Thu Oct 11

7. optimization & memory due Tue Oct 23

8. linking & exceptions due Tue Oct 30

9. processess, signals, I/O due Tue Nov 6

10. virtual memory due Tue Nov 13

11. networks due Tue Nov 20

 $ gcc server.c -o server
 $ gcc client.c -o client
 $ ./server &
 Server: listening on port 7890 ...
 $ ./client
 Server: connection established. Sending "Hello!".
 Server: exiting.
 Client: received "Hello!"
 Client: exiting.

12. second lab - presentation due Tue Dec 4

13. second lab - writeup due Fri Dec 7

14. term grade due Wed Dec 12