| Week | Date | Topic | Materials | Resources | Assignment |
|---|---|---|---|---|---|
| Computer Organization | |||||
| 0 | Jan 18 | Introduction to Systems | [slides] [pdf] [demo] | [BO Ch. 1] [video (first 19mins)] | C Lab |
| 1 | Jan 23 | Binary Operations | [slides] [pdf] | [BO Ch. 1] [video (start @19mins)] | |
| Jan 25 | Unsigned Ints | [slides] [pdf] [demo] | [BO Ch. 2.1-2.2] [video] [practice] [soln] | Binary Lab | |
| 2 | Jan 30 | Signed Ints | [slides] [pdf] [demo] | [BO Ch. 2.3] [video] | |
| Feb 1 | Floats | [slides] [pdf] [demo] | [BO Ch. 2.4] [video] [practice] [soln] | Data Lab | |
| 3 | Feb 6 | Intro to Assembly | [slides] [pdf] | [BO Ch. 3.1-3.4] [video] | |
| Feb 8 | Assembly: Conditionals | [slides] [pdf] [demo] | [BO Ch. 3.5-3.6] [video (first 25mins)] [practice] [soln] | Debugger Lab | |
| 4 | Feb 13 | Assembly: Loops | [slides] [pdf] | [BO Ch. 3.7] [video (start @ 25mins)] | |
| Feb 15 | Assembly: Procedures | [slides] [pdf] [demo] | [BO Ch. 3.8-3.9] [video] [practice] [soln] | Bomb Lab | |
| 5 | Feb 20 | Security | [slides] [pdf] [demo] | [BO Ch. 3.10] [video] | |
| Feb 22 | Security | [slides] [pdf] | [Shacham07] [video] [practice] [soln] | Attack Lab | |
| 6 | Feb 27 | Caching | [slides] [pdf] | [BO Ch. 6.2-6.4.2] [video] | |
| Mar 1 | Caching | [slides] [pdf] | [BO Ch. 6.4.3-6.4.7] [video] [practice] [soln] | Cache Lab | |
| 7 | Mar 6 | Optimization | [slides] [pdf] | [BO Ch. 5] [video] | |
| Mar 8 | Optimizing w/ Caches | [slides] [pdf] | [BO Ch. 6.5] [video] [practice] [soln] | Extra Chance Check-ins | |
| Spring Break | |||||
| Operating Systems | |||||
| 8 | Mar 20 | Processes | [slides] [pdf] | [AA Ch. 4, 5, 6]   [video] | |
| Mar 22 | Scheduling | [slides] [pdf] | [AA Ch. 7, 8] [video] [practice] [soln] | Shell Lab | |
| 9 | Mar 27 | Virtual Memory | [slides] [pdf] | [AA Ch. 15, 16, 18, 21] [video] | Mar 29 | Virtual Memory | [slides] [pdf] | [AA Ch. 19, 20, 23] [video] [practice] [soln] | VM Lab |
| 10 | Apr 3 | Synchronization | [slides] [pdf] [demo] | [AA Ch. 26, 28] [video] | |
| Apr 5 | Synchronization | [slides] [pdf] | [AA Ch. 30] [video] [practice] [soln] | Sync Lab | 11 | Apr 10 | Dynamic Memory | [slides] [pdf] | [AA Ch. 14, 17] [video] |
| Apr 12 | Dynamic Memory | [slides] [pdf] | [video] [practice] [soln] | DM Lab | |
| 12 | Apr 17 | System IO | [slides] [pdf] [demo] | [AA Ch. 39, BO Ch. 10] [video] | |
| Apr 19 | File Systems | [slides] [pdf] | [AA Ch. 40, 41] [video] [practice] [soln] | File Lab | |
| 13 | Apr 24 | Networking | [slides] [pdf] [demo] | [BO Ch. 11.1-11.3] [video] | |
| Apr 26 | Networking | [slides] [pdf] | [BO Ch. 11.4] [video] | Net Lab | |
| 14 | May 1 | Network Security | [slides] [pdf] | [BO Ch. 11.5-6] | |
| May 3 | Web & Web Security | Review | |||
| 15 | May 10 (9am-noon) |
Extra Chance Check-ins | |||