How Computers Work

CMSC 15400: Introduction to Computer Systems

All homeworks are due in class, the next meeting after they are handed out.

DateReadingsHomeworkProgramming AssignmentsDiscussion Starter

Week 1
Meeting #fMon Mar 31Chapter 1hw1.pdf  
Meeting 1Wed Apr 02Section 2.1hw2.pdfdatalab-handout-linux.tar.gz
datalab-handout-macosx.tar.gz
Albert
Lab 1Wed Apr 02Shell basics
Meeting 2Fri Apr 04Section 2.2 & 2.3hw3.pdf Morgenstern

Week 2
Meeting 3Mon Apr 07Section 2.4  Bercea
Meeting 4Wed Apr 09Section 3.1-3.4  Devoid
Lab 2Wed Apr 09Shell programming
Meeting 5Fri Apr 11Section 3.5hw4.pdf Dix
 Sun Apr 13Datalab due (at midnight)

Week 3
Meeting 6Mon Apr 14Section 3.6Problem 3.13 from the text;
email your solution to mirsattari@cs
 Doliner
Meeting 7Wed Apr 16Section 3.7hw6.pdf Fetterman
Lab 3Wed Apr 16gdb
Meeting 8Fri Apr 18Section 3.8, 3.13 Binary Bomb: handout start progressFlesh

Week 4
Meeting 9Mon Apr 21Section 3.9, 3.10, 3.11  Frausto
Meeting #fWed Apr 23Chapter 3 catchup   
Lab 4Wed Apr 23Chapter 3 exercise
Meeting 10Fri Apr 25Section 8.1, 8.2  Frye
 Sun Apr 27Binary Bomb due (at midnight)

Week 5
Meeting 11Mon Apr 28Section 8.3, 8.4Problem 8.14 from the text;
email your solution to mirsattari@cs
 Hansen
Meeting 12Wed Apr 30Section 8.5Problem 8.19 from the text;
email your solution to siweiw@cs
Buffer Overflow:writeup buflab-handout.tar.gz progressJackson
Lab 5Wed Apr 30Midterm exam: 4 - 5:30 Ryerson 276. Open book (no computers/no internet)
Meeting 13Fri May 02Section 8.6  Kennedy

Week 6
Meeting 14Mon May 05Sections 6.2, 6.3, 6.5  Fienberg
Meeting 15Wed May 07Section 6.4  Klein
Lab 6Wed May 07Profiling
Meeting 16Fri May 09Sections 6.6, 6.7, 6.8Problem 6.31 from the text;
email your solution to siweiw@cs. NOTES:
A: Submit the output of your memory mountain run as well as your predictions.
B: Use mountain.tar.gz, not the one from the CS:APP website.
C: If you wish, use matlab to view a graph of your results. To do so, delete everything except the grid of numbers from your output (removing the first column of labels too) and then evaluate mesh(load('mountain.out')) at the matlab prompt where mountain.out is a file containing the edited output.
D: If your machine appears to only have a single cache, note that in your submission.
 Knox
 Sun May 11Buffer Overflow due (at midnight)

Week 7
Meeting 17Mon May 12Sections 10.1-10.5Problem 6.28 from the text;
email your solution to siweiw@cs
 Kopp
Meeting #fWed May 14Class Cancelled   
Lab 7Wed May 14 
Meeting 18Fri May 16Sections 10.6, 10.7 Building a shell: shlab-handout-macosx.tar.gz shlab-handout-linux.tar.gz shlab.pdfLewis

Week 8
Meeting 19Mon May 19Sections 10.8, 10.9Problem 10.14 from the text;
email your solution to siweiw@cs
 Liang
Meeting 20Wed May 21Section 10.10, spe895.pdf and boehm-pldi93.pdf  Linsay
Lab 8Wed May 21svn
Meeting #fFri May 23Conservative GC, cotd   
 Tue May 27Building a Shell due (at midnight)

Week 9
Meeting 21Wed May 28Sections 11.1-11.3, 11.5-11.7  Meigs
Lab 9Wed May 28Final practice
Meeting 22Fri May 30Sections 12.2-12.3 Web proxy server proxylab-handout.tar proxylab.pdfNudell

Week 10
Meeting 23Mon Jun 02Section 12.4  Rosasco
Meeting 24Wed Jun 04Sections 12.5, 12.6  Butler
Lab 10Wed Jun 04Final exam: 4 - 5:30 Ryerson 276. Open book (no computers/no internet)
 Tue Jun 10Web proxy server due (at midnight)
Robby Findler