15-213/15-513/14-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 lectures are presented by Prof. Brian Railing (bpr) or Prof. Phillip Gibbons (pg) as indicated in the schedule.
  • 14-513 lectures are presented by Prof. Taha Khan (tk)
  • 15-513 students should watch the 14-513 F24 lecture videos (Videos are available here).
  • 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

Aug 26 Overview (pdf, pptx, L0-writeup, L0-tar-file) bpr/pg, tk 1 L0 (cprogramminglab) out
Aug 28 Bits, Bytes, & Integers (pdf, pptx) pg, tk 2.1-2.3 L1 (datalab) out
Aug 29 Recitation 1: Introduction, Datalab (pdf, slides, soln)

Aug 31 Bootcamp 1: Linux, Command Line, Git (slides, handout, tar)
Sep 02 Machine Programming (Part I) bpr, tk 3.1-3.5 L0 due
Sep 04 Machine Programming (Part II) bpr, tk 3.6 L2 (bomblab) out
Sep 05 Recitation 2: Bomb Lab

Sep 07 Bootcamp 2: Debugging & GDB
Sep 09 Machine Programming (Part III) pg, tk 3.7-3.8 L1 due
Sep 11 Machine Programming (Part IV) pg, tk 3.9-3.11
Sep 12 Recitation 3: Bomb Lab part 2

Sep 16 Linking bpr, tk 7 L2 due, L3 (attacklab) out
Sep 18 Design and Debugging bpr, tk 9.10-9.12
Sep 19 Recitation 4: Attack Lab and Stacks

Sep 21 Bootcamp 3: GCC & Build Automation
Sep 23 The Memory Hierarchy pg, dv 6.1-6.3
Sep 25 Cache Memories pg, tk 6.4-6.7 L3 due, L4 (cachelab) out
Sep 26 Recitation 5: Caches and C Review

Sep 28 Bootcamp 4: C Programming
Sep 30 Virtual Memory: Concepts bpr, tk 9.1-9.6
Oct 02 Virtual Memory: Details bpr, tk 9.7-9.8
Oct 03 Recitation 6: Caches & Blocking

Oct 07 Dynamic Memory Allocation: Basic bpr, tk 9.9
Oct 09 Dynamic Memory Allocation: Advanced bpr, tk 9.10-9.12 L4 due, L5 (malloclab) out
Oct 10 Recitation 7: Malloclab (Part I)

Oct 14 No class—fall break
Oct 16 No class—fall break
Oct 17 No recitation—fall break

Oct 21 In-class Midterm
Oct 23 Code Optimization bpr, tk 5
Oct 24 Recitation 8: Malloclab (Part II)

Oct 26 Bootcamp 5: Post-checkpoint Malloc
Oct 28 Processes and Multitasking bpr, tk 8.1-8.4 L5a (malloc checkpoint) due
Oct 30 Exceptional Control Flow bpr, tk 8.5-8.8
Oct 31 Recitation 9: Processes and Shells

Nov 04 No class—Democracy Day L5b (malloc final) due, L6 (tshlab) out
Nov 06 System Level I/O and File Systems pg, tk 10
Nov 07 Recitation 10: Tshlab

Nov 11 File Systems / Network Programming (Part I) pg, tk 11.1-11.4
Nov 13 Network Programming (Part II) pg, tk 11.4-11.6
Nov 14 Recitation 11: Networking and Proxies

Nov 18 Concurrent Programming pg, tk 12.1-12.3 L6 due, L7 (proxylab) out
Nov 20 Synchronization: Basic pg, tk 12.4, 12.5.1-3
Nov 21 Recitation 12: Synchronization

Nov 25 Synchronization: Advanced pg, tk 12.5.4-5, 12.7-8 L7 due, L8 (sfslab) out
Nov 27 No class—Thanksgiving
Nov 28 No recitation—Thanksgiving

Dec 02 Thread-Level Parallelism pg, tk 12.6
Dec 04 Frontiers of Computing L8 due
Dec 05 Recitation 13: Exam Review

Dec 07 Bootcamp 6: Exam Review