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

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 either Prof. Seth Copen Goldstein (SCG), Prof. Zack Weinberg (ZW), or Prof. Brian Railing (bpr) as indicated in the schedule.
  • 14-513 lectures are presented by Prof. David Varodayan.
  • Lecture recordings for 15-213 and 14-513 are available on Panopto.
  • All times (unless otherwise noted) are in Eastern Time.

Schedule (subject to change)

Date Lecture/Recitation Instructor   Reading   Labs

Aug 30 Recitation 1: No recitation--Semester starts with first lecture
Aug 31 Overview (pptx, pdf, video) SCG/ZW 1 L0 (cprogramminglab) out (pdf, tar)
Sep 2 Bits, Bytes, & Integers I (pptx, pdf, video) ZW 2.1 L1 (datalab) out (pdf, tar)

Sep 5 Bootcamp 1: Linux, Command Line, Git (slides, pdf, tar, video)
Sep 6 Recitation 2: No recitations--Labor Day
Sep 7 Bits, Bytes, & Integers II (pptx, pdf, video) bpr 2.2-2.3 L0 due
Sep 9 Machine Prog: Basics (pptx, pdf, video) SCG 3.1-3.5 L2 (bomblab) out (pdf, tar)

Sep 12 Bootcamp 2: Debugging & GDB (slides, pdf, tar, video)
Sep 13 Recitation 3: Datalab and Data Representations (slides, pdf)
Sep 14 Machine Prog: Control (pptx, pdf, video) ZW 3.6
Sep 16 Machine Prog: Procedures (pptx, pdf, video) bpr 3.7 L1 due

Sep 20 Recitation 4: Bomb Lab (slides, pdf, tar)
Sep 21 Machine Prog: Data (pptx, pdf, video) ZW 3.8-3.9
Sep 23 Machine Prog: Advanced (pptx, pdf, video) ZW 3.10 L2 due, L3 (attacklab) out (pdf, tar)

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

Oct 3 Bootcamp 4: C Programming (slides, tar, video)
Oct 4 Recitation 6: Cache Lab (slides, pdf, tar)
Oct 5 Design and Debugging (pptx, pdf, video) SCG
Oct 7 Code Optimization and Linking (pptx, pdf, video) ZW 5

Oct 11 Recitation 7: Blocking & C Review (slides, pdf, tar)
Oct 12 Dynamic Memory Allocation: Basic (pptx, pdf, video) ZW 9.9 L4 due, L5 (malloclab) out (pdf, tar)
Oct 14 No lecture--Mid-semester break

Oct 18 Recitation 8: Malloc lab (Part I) (slides)
Oct 19 Dynamic Memory Allocation: Advanced (pptx, pdf, video) ZW 9.10-9.12
Oct 21 Virtual Memory: Concepts (pptx, pdf, video) SCG 9.1-9.6

Oct 25 Recitation 9: Malloc lab (Part II) (slides, tar, video)
Oct 26 Virtual Memory: Systems (pptx, pdf, video) SCG 9.7-9.8 L5a Due
Oct 28 ECF: Exceptions & Processes (pptx, pdf, video) ZW 8.1-8.4
Oct 29 Bootcamp 5: Malloc (slides, video)

Nov 1 Recitation 10: Processes, signals (slides, tar, video)
Nov 2 ECF: Signals & Nonlocal Jumps (pptx, pdf, video) ZW 8.5-8.8 L5b Due, L6 (tshlab) out (pdf, tar)
Nov 4 System Level I/O (pptx, pdf, video) SCG 10

Nov 8 Recitation 11: Shell lab (slides, video)
Nov 9 Network Programming (Part I) (pptx, pdf, video) ZW 11.1-11.4
Nov 11 Network Programming (Part II) (pptx, pdf, video) ZW 11.4-11.6

Nov 15 Recitation 12: Networking and Proxy (slides, tar, video)
Nov 16 Concurrent programming (pptx, pdf, video) SCG 12.1-12.3 L6 Due, L7 (proxylab) out (pdf, tar)
Nov 18 Synchronization: Basic (pptx, pdf, video) SCG 12.4, 12.5.1-3

Nov 22 Recitation 13: Synchronization (slides, video)
Nov 23 Synchronization: Advanced (pptx, pdf, video) SCG 12.5.4-5, 12.7-8 L7a due
Nov 25 No lecture--Thanksgiving

Nov 29 Recitation 14: Exam review (slides, video)
Nov 30 Thread-Level Parallelism (pptx, pdf, video) SCG 12.6
Dec 2 Future of Computing (video) SCG L7b due

Dec 4 Exam Review from 12-3pm in GHC 4401 (slides)

Dec 9 Final Exam Pittsburgh: 8:30am ET, Silicon Valley: TBD