1 |
Tue |
Sept 3 |
Bits
[Prof. Bull's slides]
|
[Chapter 1] |
Data lab |
Thu |
Sept 5 |
Data Representation
[Prof. Bull's slides]
|
[Chapter 2.1-2.3]
|
|
2 |
Tue |
Sept 10 |
Compiling C code
[Prof. Bull's slides]
|
[Chapter 3.1-3.2] |
Data lab
|
Thu |
Sept 12 |
Intro to Assembly
[Prof. Bull's slides]
|
[Chapter 3.3-3.4] |
|
3 |
Tue |
Sept 17 |
Assembly: Control
[slides]
[pdf]
|
[Chapter 3.5-3.6] |
Process Lab |
Thu |
Sept 19 |
Assembly: Proc
[slides]
[pdf]
[demo]
|
[Chapter 3.7] |
|
4 |
Tue |
Sept 24 |
Overflows
[slides]
[pdf]
|
[Chapter 3.10.3-3.10.4] |
Bomb Lab |
Thu |
Sept 26 |
Overflows
[slides]
[slides]
|
[Shacham07] (Optional) |
|
5 |
Tue |
Oct 1 |
Optimization
[slides]
[pdf]
|
[Chapter 5] |
Bomb Lab |
Thu |
Oct 3 |
MIDTERM 1
|
|
|
6 |
Tue |
Oct 8 |
Caching
[slides]
[pdf]
|
[Chapter 6.3-6.4.2] |
Attack Lab |
Thu |
Oct 10 |
Caching
[slides]
[pdf]
|
[Chapter 6.4.3-6.6] |
|
7 |
Tue |
Oct 15 |
Dynamic Memory
[slides]
[pdf]
|
[Chapter 9.9] |
Attack Lab |
Thu |
Oct 17 |
Dynamic Memory
[slides]
[pdf]
|
[Chapter 9.10-9.11]
|
|
8 |
Tue |
Oct 22 |
Fall Break
|
|
Malloc Lab |
Thu |
Oct 24 |
Processes
[slides]
[pdf]
[demo]
|
Ch. 8 |
|
9 |
Tue |
Oct 29 |
Virtual Memory
[slides]
[pdf]
|
Ch. 9.1-9.7 |
Malloc Lab |
Thu |
Oct 31 |
Threads & Synchronization
[slides]
[pdf]
[demo]
|
Ch. 12.3-12.4, 12.6-12.7 |
|
10 |
Tue |
Nov 5 |
Synchronization
[slides]
[pdf]
[demo]
|
Ch. 12.5 |
Malloc Lab |
Thu |
Nov 7 |
Networking
[slides]
[pdf]
[demo]
|
|
|
11 |
Tue |
Nov 12 |
MIDTERM 2
|
|
Sync Lab |
Thu |
Nov 14 |
Networking
[slides]
[pdf]
[demo]
|
| |
12 |
Tue |
Nov 19 |
Networking
[slides]
[pdf]
[demo]
|
|
Proxy Lab |
Thu |
Nov 21 |
File Systems
[slides]
[pdf]
|
|
|
13 |
Tue |
Nov 26 |
No class
|
|
|
Thu |
Nov 28 |
Thanksgiving
|
|
|
14 |
Tue |
Dec 3 |
File Systems
[slides]
[pdf]
|
|
Proxy Lab |
Thu |
Dec 5 |
Reliable Storage
[slides]
[pdf]
|
|
|
15 |
Tue |
Dec 10 |
Distributed Systems
[slides]
[pdf]
|
|
Proxy Lab Demos |