15-213/15-513 Introduction to Computer Systems: Schedule

Notes on links

  • pptx links are to Powerpoint versions of the lectures
  • pdf links are to Adobe Acrobat versions of the lectures
  • code links are to directories containing code used for class demonstrations
  • tar links are to archive files in TAR format. Use the tar command on a linux machine to unpack these
  • 15-213/513 lectures are presented by Prof. Brian Railing (bpr), Prof. David Andersen (dga), or Prof. Nathan Beckmann (beckmann) as indicated in the schedule.
  • Bootcamps 5-6 will be presented live by the TAs, at a room TBD.
  • For Bootcamps 1-4, we will post videos of prior bootcamps, along with slides and handouts.
  • All times (unless otherwise noted) are in Eastern Time.

Schedule (subject to change)

Date Lecture/Recitation Instructors   Reading   Labs

Jan 13 Overview (pdf, pptx, L0-writeup, L0-tar-file) dga/beckmann/bpr 1 L0 (cprogramminglab) out
Jan 15 Bits, Bytes, & Integers 2.1-2.3 L1 (datalab) out
Jan 16 Recitation 1: Introduction, Datalab

Jan 18 Bootcamp 1: Linux, Command Line, Git
Jan 20 Machine Programming (Part I) 3.1-3.6 L0 due
Jan 22 Machine Programming (Part II) 3.6-3.7 L2 (bomblab) out
Jan 23 Recitation 2: Bomb Lab

Jan 25 Bootcamp 2: Debugging & GDB
Jan 27 Machine Programming (Part III) 3.7-3.9 L1 due
Jan 29 Machine Programming (Part IV) 3.10-3.11
Jan 30 Recitation 3: Bomb Lab part 2

Feb 03 Linking 7 L2 due, L3 (attacklab) out
Feb 05 Design and Debugging 9.10-9.12
Feb 06 Recitation 4: Attack Lab and Stacks

Feb 08 Bootcamp 3: GCC & Build Automation
Feb 10 The Memory Hierarchy 6.1-6.3
Feb 12 Cache Memories 6.4-6.7 L3 due, L4 (cachelab) out
Feb 13 Recitation 5: Caches and C Review

Feb 15 Bootcamp 4: C Programming
Feb 17 Virtual Memory: Concepts 9.1-9.6
Feb 19 Virtual Memory: Details 9.7-9.8
Feb 20 Recitation 6: Caches & Blocking

Feb 24 Dynamic Memory Allocation: Basic 9.9
Feb 26 Dynamic Memory Allocation: Advanced 9.10-9.12 L4 due, L5 (malloclab) out
Feb 27 Recitation 7: Malloclab (Part I)

Mar 03 No class—fall break
Mar 05 No class—fall break
Mar 06 No recitation—fall break

Mar 10 In-class Midterm
Mar 12 Code Optimization 5
Mar 13 Recitation 8: Malloclab (Part II)

Mar 15 Bootcamp 5: Post-checkpoint Malloc
Mar 17 Processes and Multitasking 8.1-8.4 L5a (malloc checkpoint) due
Mar 19 Exceptional Control Flow 8.5-8.8
Mar 20 Recitation 9: Processes and Shells

Mar 24 No class—Democracy Day L5b (malloc final) due, L6 (tshlab) out
Mar 26 System Level I/O and File Systems 10
Mar 27 Recitation 10: Tshlab

Mar 31 File Systems / Network Programming (Part I) 11.1-11.4
Apr 02 Network Programming (Part II) 11.4-11.6
Apr 03 Recitation 11: Networking and Proxies

Apr 07 Concurrent Programming 12.1-12.3 L6 due, L7 (proxylab) out
Apr 09 Synchronization: Basic 12.4, 12.5.1-3
Apr 10 Recitation 12: Synchronization

Apr 14 Synchronization: Advanced 12.5.4-5, 12.7-8 L7 due, L8 (sfslab) out
Apr 16 No class—Thanksgiving
Apr 17 No recitation—Thanksgiving

Apr 21 Thread-Level Parallelism 12.6
Apr 23 Frontiers of Computing L8 due
Apr 24 Recitation 13: Exam Review

Apr 26 Bootcamp 6: Exam Review