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. David Varodayan (dv) or Prof. Mohamed Farag (mf) (Videos are available here).
  • 15-513 students should watch the 14-513 lecture videos.
  • All times (unless otherwise noted) are in Eastern Time.

Schedule (subject to change)

Date Lecture/Recitation Instructors   Reading   Labs

Aug 27 Overview (pdf, pptx, L0-writeup) bpr/pg, dv 1 L0 (cprogramminglab) out
Aug 29 Bits, Bytes, & Integers (pdf, pptx) pg, mf 2.1-2.3 L1 (datalab) out
Aug 30 Recitation 1: Introduction, Datalab (pdf, slides, soln)

Sep 01 Bootcamp 1: Linux, Command Line, Git (slides, handout, tar)
Sep 03 Machine Prog: Basics (pdf, pptx, activity, soln) pg, mf 3.1-3.5 L0 due
Sep 05 Machine Prog: Control (pdf, pptx, activity, soln) pg, mf 3.6 L2 (bomblab) out
Sep 06 Recitation 2: Bomb Lab (pdf, slides)

Sep 08 Bootcamp 2: Debugging & GDB (slides, handout, tar)
Sep 10 Machine Prog: Procedures (pdf, pptx, activity, soln) pg, mf 3.7 L1 due
Sep 12 Machine Prog: Data (pdf, pptx, activity, soln) pg, mf 3.8-3.9, 3.11
Sep 13 Recitation 3: Bomb Lab part 2 (pdf, slides)

Sep 17 Machine Prog: Advanced (pdf, pptx, activity) bpr, mf 3.10
Sep 19 Design and Debugging (pdf, pptx) bpr, mf 9.10-9.12 L2 due, L3 (attacklab) out
Sep 20 Recitation 4: Attack Lab and Stacks (slides, handout)

Sep 22 Bootcamp 3: GCC & Build Automation (slides, handout)
Sep 24 The Memory Hierarchy (pdf, pptx) pg, dv 6.1-6.3
Sep 26 Cache Memories (pdf, pptx) pg, dv 6.4-6.7 L3 due, L4 (cachelab) out
Sep 27 Recitation 5: Caches and C Review (slides)

Sep 29 Bootcamp 4: C Programming (slides, handout)
Oct 01 Virtual Memory: Concepts (pdf, pptx) bpr, dv 9.1-9.6
Oct 03 Virtual Memory: Details (pdf, pptx) bpr, dv 9.7-9.8
Oct 04 Recitation 6: Caches & Blocking (slides)

Oct 08 Dynamic Memory Allocation: Basic (pdf, pptx) bpr, dv 9.9
Oct 10 Dynamic Memory Allocation: Advanced (pdf, pptx) bpr, dv 9.10-9.12 L4 due, L5 (malloclab) out
Oct 11 Recitation 7: Malloclab (Part I) (slides)

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

Oct 22 Code Optimization (pdf, pptx) bpr, mf 5
Oct 24 Linking (pdf, pptx, activity, activit-soln) bpr, mf 7
Oct 25 Recitation 8: Malloclab (Part II) (slides)

Oct 27 Bootcamp 5: Post-checkpoint Malloc (pdf)
Oct 29 Processes and Multitasking (pdf, pptx) pg, dv 8.1-8.4 L5a (malloc checkpoint) due
Oct 31 Exceptional Control Flow (pdf, pptx) pg, dv 8.5-8.8
Nov 01 Recitation 9: Processes and Shells (slides)

Nov 05 No class—Democracy Day L5b (malloc final) due, L6 (tshlab) out
Nov 07 System Level I/O and File Systems (pdf, pptx) bpr, dv 10
Nov 08 Recitation 10: Tshlab (slides)

Nov 12 File Systems / Network Programming (Part I) (net_pdf, fs_pdf, code) bpr, dv 11.1-11.4
Nov 14 Network Programming (Part II) (14513_slides) bpr, dv 11.4-11.6
Nov 15 Recitation 11: Networking and Proxies (slides)

Nov 19 Concurrent Programming (pdf, pptx) pg, dv 12.1-12.3 L6 due, L7 (proxylab) out
Nov 21 Synchronization: Basic (pdf, pptx, code) pg, dv 12.4, 12.5.1-3
Nov 22 Recitation 12: Synchronization (slides)

Nov 26 Synchronization: Advanced (pdf, pptx) bpr, dv 12.5.4-5, 12.7-8 L7 due, L8 (sfslab) out
Nov 28 No class—Thanksgiving
Nov 29 No recitation—Thanksgiving

Dec 03 Thread-Level Parallelism (pdf, pptx) pg, dv 12.6
Dec 05 Frontiers of Computing L8 due
Dec 06 Recitation 13: Exam Review (slides)

Dec 08 Bootcamp 6: Exam Review (slides)