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 Fall, 2015.
  • 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 22 Overview (pdf , code , video) bpr 1
May 23 Bits and Bytes (activity, activity-sol, pdf , code , video) bpr 2.1 L1 (datalab) out
May 24 12pm - 1:30pm Linux/Git Bootcamp (bootcamp-slides)
May 25 Integers (activity, activity-sol, pdf , code , old-video , new-video) bpr 2.2-2.3

May 29 Floating Point (activity, activity-sol, pdf , old-video , new-video) bpr 2.4
May 30 Machine Prog: Basics (activity, activity tar, pdf , code, old-video , new-video) bpr 3.1-3.5
May 31 Machine Prog: Control (activity, activity tar, pdf , code , old-video , new-video) bpr 3.6 L1 due, L2 (bomblab) out
Jun 1 Bomblab/GDB Recitation (Optional) (slides)

Jun 5 Machine Prog: Procedures (activity, activity tar, pdf , code , old-video , new-video) bpr 3.7
Jun 6 Machine Prog: Data (activity, activity tar, pdf , code , old-video , new-video) bpr 3.8-3.9
Jun 7 Machine Prog: Advanced (activity, activity-sol, pdf , code , old-video , new-video) bpr 3.10

June 11 L2 due, L3 (attacklab) out
June 12 The Memory Hierarchy (activity, activity-sol, pdf , old-video , new-video) bpr 6.1-6.3
June 13 Attacklab Revisited (activity, pdf) bpr
June 14 Cache Memories (pdf, activity, (old)activity-sol, old-video , new-video) bpr 6.4-6.7
June 15 C Bootcamp (slides) TAs

June 18 L3 due, L4 (cachelab) out
June 19 Code Optimization (pdf, old-video , new-video) bpr 5
June 20 Linking (activity, pdf, old-video , new-video) sb 7
June 21 ECF: Exceptions & Processes (pdf, old-video , new-video) bpr 8.1-8.4

June 25 L4 due, L5 (tshlab) out
June 26 Midterm Review (pdf) TAs
June 27 ECF: Signals & Nonlocal Jumps (pdf , old-video , new-video) bpr 8.5-8.8
June 28 System Level I/O (pdf, old-video , new-video) bpr 9.10
June 29 Midterm Exam - No Office Hours

July 5 Virtual Memory: Concepts (activity, pdf, old-video , new-video) bpr 9.1-9.6
July 6 Virtual Memory: Systems (pdf, old-video , new-video) bpr 9.7-9.8

July 9 L5 due, L6 (malloclab) out
July 10 Dynamic Memory Allocation: Basic (pdf, old-video , video) bpr 9.9
July 11 Dynamic Memory Allocation: Advanced (pdf, old-video , video) bpr 9.10-9.13
July 12 More Malloc (pdf) bpr 9.10-9.13

July 17 Network Programming (Part I) (activity, activity-sol, pdf, old-video , video) sb 11.1-11.3 Malloclab Checkpoint due
July 19 Network Programming (Part II) (activity-sol1, activity-sol2, pdf, old-video , video) sb 11.4

July 24 Concurrency (pdf, old-video , video) bpr 12.1-12.3
July 26 Synchronization: Basic (pdf, old-video, video) bpr 12.4, 12.5.1-3
July 27 L6 Due, L7 (proxylab) out

July 31 Synchronization: Advanced (pdf, old-video, video) bpr 12.5.4-5, 12.7-8
Aug 1 Thread-Level Parallelism (pdf, old-video , video) sb 12.6
Aug 2 Course Review (pdf) bpr
Aug 3 Final Exam Review (pdf, pptx) TAs

Aug 7 Future of Computing bpr
Aug 8 Final Exam
Aug 10 L7 due