15-213/18-213: Introduction to Computer Systems

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
  • video links are to lectures given in spring 2019.
  • tar links are to archive files in TAR format. Use the tar command on a linux machine to unpack these
Date Lecture/Recitation Lec   Reading   Labs

May 19 Overview (pdf, code, video) bpr 1
May 20 Bits and Bytes (pdf, video) bpr 2.1
May 21 Integers (pdf, video) bpr 2.2-2.3
May 22 Floating Point (pdf, video) bpr 2.4 L1 (datalab) out

May 26 Linux/Git Bootcamp (video) TAs
May 27 Machine Prog: Basics (pdf, video) bpr 3.1-3.5
May 28 Machine Prog: Control (pdf, video) bpr 3.6
May 29 Bomblab/GDB Recitation (video) TAs, Riley L1 due, L2 (bomblab) out

Jun 3 Machine Prog: Procedures (pdf, video) bpr 3.7
Jun 4 Machine Prog: Data (pdf, video) bpr 3.8-3.9
Jun 5 Machine Prog: Advanced (pdf, video) guest 3.10

June 8 L2 due, L3 (attacklab) out
June 9 The Memory Hierarchy (pdf, video) bpr 6.1-6.3
June 11 Attacklab Revisited (pdf, video) TAs
June 12 Cache Memories (pdf, video) bpr 6.4-6.7

June 15 L3 due, L4 (cachelab) out
June 16 C Bootcamp (pdf, video) TAs, Riley
June 17 Code Optimization (pdf, video (low audio quality)) bpr 5
June 18 Design and Debugging (pdf, video) bpr
June 19 Dynamic Memory Allocation: Basic (pdf, video) bpr 9.9

June 22 L4 due, L5 (malloclab) out
June 23 Dynamic Memory Allocation: Advanced (pdf, video) bpr 9.10-9.13
June 24 Midterm Review (pdf, video) TAs
June 26 Midterm Exam — No Office Hours

June 28 Malloc Bootcamp (pdf, video) TAs, Riley
July 1 Linking (pdf, video) bpr 7 malloclab checkpoint due

July 8 Virtual Memory: Concepts (pdf, video) sboucher 9.1-9.6
July 9 Virtual Memory: Systems (pdf, video) sboucher 9.7-9.8
July 10 ECF: Exceptions & Processes (pdf, video) bpr 8.1-8.4

July 13 L5 due, L6 (tshlab) out
July 14 ECF: Signals & Nonlocal Jumps (pdf, video) bpr 8.5-8.8
July 17 System-Level I/O (pdf, video) bpr 10

July 21 Network Programming (Part I) (pdf, video) bpr 11.1-11.3
July 22 Network Programming (Part II) (pdf, video) bpr 11.4
July 23 Concurrency (pdf, video) bpr 12.1-12.3
July 24 L6 Due, L7 (proxylab) out

July 28 Synchronization: Basic (pdf, video) bpr 12.4, 12.5.1-3
July 29 Synchronization: Advanced (pdf, video) bpr 12.5.4-5, 12.7-8
July 30 Thread-Level Parallelism (pdf, video) bpr 12.6
July 31 bpr proxylab checkpoint due

Aug 4 Final Exam Review TAs
Aug 5 bpr
Aug 6 Final Exam
Aug 7 L7 due