15-213/14-513/15-513: Intro to Computer Systems, Fall 2022

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 / 15-513 lectures are presented by Prof. Zack Weinberg (zw), Prof. Dave Andersen (dga), or Prof. Brian Railing (bpr) as indicated in the schedule. All lectures are recorded and posted on Panopto.
  • 14-513 lectures are presented by Prof. David Varodayan. All lectures are recorded and posted on Panopto.
  • All times (unless otherwise noted) are in Eastern Time.

Schedule (subject to change)

Date Lecture/Recitation Instructor   Reading   Labs

Aug 29 Recitation 1: No recitation — Semester starts with first lecture
Aug 30 Overview (pptx, pdf, video 15213, video 14513) zw/dga/bpr 1 L0 (cprogramminglab) out (pdf, tar)
Sep 1 Bits, Bytes, & Integers I (pptx, pdf, activity, activity soln, video 15213, video 14513) zw/dga 2.1 L1 (datalab) out (pdf, tar)

Sep 4 Bootcamp 1: Linux, Command Line, Git (slides, pdf, tar, video)
Sep 5 Recitation 2: No recitation — Labor Day
Sep 6 Bits, Bytes, & Integers II (pptx, pdf, activity, activity soln, video 15213, video 14513) zw/dga 2.2-2.3 L0 due
Sep 8 Machine Prog: Basics (pptx, pdf, activity, activity soln, video 15213, video 14513) zw/dga 3.1-3.5 L2 (bomblab) out (pdf, tar)

Sep 11 Bootcamp 2: Debugging & GDB (slides, pdf, tar, video)
Sep 12 Recitation 3: Datalab and Data Representations (slides, pdf)
Sep 13 Machine Prog: Control (pptx, pdf, activity, activity soln, video 15213, video 14513) zw/dga 3.6
Sep 15 Machine Prog: Procedures (pptx, pdf, activity, activity soln, video 15213, video 14513) zw/dga 3.7 L1 due

Sep 19 Recitation 4: Bomb Lab (slides, pdf, tar)
Sep 20 Machine Prog: Data (pptx, pdf, activity, activity soln, video 15213, video 14513) zw/dga 3.8-3.9
Sep 22 Machine Prog: Advanced (pptx, pdf, activity, activity soln, video 15213, video 14513) zw/dga 3.10 L2 due, L3 (attacklab) out (pdf, tar)

Sep 25 Bootcamp 3: GCC & Build Automation (slides, pdf, tar, video)
Sep 26 Recitation 5: Attack Lab and Stacks (slides, pdf, tar)
Sep 27 The Memory Hierarchy (pptx, pdf, video 15213, video 14513) dga 6.1-6.3
Sep 29 Cache Memories (pptx, pdf, video 15213, video 14513) dga 6.4-6.7 L3 due, L4 (cachelab) out (pdf, tar)

Oct 2 Bootcamp 4: C Programming (slides, tar, video)
Oct 3 Recitation 6: C Review (slides, pdf, tar)
Oct 4 Design and Debugging (pptx, pdf, video 15213, video 14513) dga
Oct 6 Code Optimization (pptx, pdf, video 15213, video 14513) dga 5

Oct 10 Recitation 7: Caches & Blocking (slides, pdf, tar)
Oct 11 Dynamic Memory Allocation: Basic (pptx, pdf, video 15213, video 14513) zw 9.9
Oct 13 Dynamic Memory Allocation: Advanced (pptx, pdf, video 15213, video 14513) zw 9.10-9.12 L4 due, L5 (malloclab) out (pdf, tar)

Oct 17 No recitation — fall break
Oct 18 No class — fall break
Oct 20 No class — fall break

Oct 24 Recitation 8: Malloc lab (Part I) (slides, pdf)
Oct 25 Linking (pptx, pdf, video 15213, video 14513) dga 7
Oct 27 Virtual Memory: Concepts (pptx, pdf, activity, activity soln, video 15213, video 14513) dga 9.1-9.6

Oct 30 Bootcamp 5: Malloc (slides)
Oct 31 Recitation 9: Malloc lab (Part II) (slides, tar)
Nov 1 Virtual Memory: Details (pptx, pdf, activity, activity soln, video 15213, video 14513) dga 9.7-9.8 L5a Due
Nov 3 Processes and Multitasking (pptx, pdf, video 15213, video 14513, stack-cache, float, assembly) zw 8.1-8.4

Nov 7 Recitation 10: Processes, signals (slides, tar)
Nov 8 Exceptional Control Flow (pptx, pdf, video 15213, video, video 14513) zw 8.5-8.8 L5b Due, L6 (tshlab) out (pdf, tar)
Nov 10 System Level I/O (pptx, pdf, supplemental, activity, activity tar, activity soln, video 15213, video, video 14513) dga 10

Nov 14 Recitation 11: Shell lab (slides)
Nov 15 Network Programming (Part I) (pptx, pdf, activity, video 15213, video, video 14513) dga 11.1-11.4
Nov 17 Network Programming (Part II) (pptx, pdf, activity, video 15213, video 14513, lecture code, video) dga 11.4-11.6 L7 (proxylab) out (pdf, tar)

Nov 21 Recitation 12: Networking and Proxy (slides, tar)
Nov 22 Concurrent programming (pptx, pdf, activity, activity soln, video 15213, video 14513) dga 12.1-12.3 L6 Due
Nov 24 No class — Thanksgiving

Nov 28 Recitation 13: Synchronization (slides)
Nov 29 Synchronization: Basic (pptx, pdf, activity, video 15213, video 14513, video) zw 12.4, 12.5.1-3
Dec 1 Synchronization: Advanced (pptx, pdf, video 15213, video 14513, video) zw 12.5.4-5, 12.7-8 L7a due

Dec 5 Recitation 14: Exam review (slides)
Dec 6 Thread-Level Parallelism (pptx, pdf, video 15213, video 14513, video) dga 12.6
Dec 8 Future of Computing (pptx, pdf) dga L7b due