15-213/18-213/15-513/18-613: Intro to Computer Systems, Spring 2020

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

  • 18-613 lecures are presented by Prof. Ian Lane
  • 15/18-213 lectures are presented by either Prof. Seth Copen Goldstein (SCG) or Prof. Saugata Ghose (SG) as indicated in the schedule.
Date Lecture/Recitation 213 Lec   Reading   Labs

Jan 13 Recitation 1: No recitation--Semester starts with first lecture
Jan 14 Overview (pptx , pdf , code , video) SCG/SG 1 L0 (cprogramminglab) out (pdf, tar)
Jan 16 Bits, Bytes, & Integers I (pptx , pdf , code , video) SCG 2.1

Jan 20 Recitation 2: No recitations--Martin Luther King Day / Linux Boot Camp (Sun 1/19 GHC 4401 6:00pm) (pdf)
Jan 21 Bits, Bytes, & Integers II (pptx , pdf , code , video) SCG 2.2-2.3 L1 (datalab) out
Jan 23 Floating Point (pptx , pdf , video) SCG 2.4 L0 due

Jan 27 Recitation 3: Datalab and Data Representations (pdf , pptx , handout , solution)
Jan 28 Machine Prog: Basics (pptx , pdf , code , video) SG 3.1-3.5
Jan 30 Machine Prog: Control (pptx , pdf , code , video) SG 3.6 L1 due, L2 (bomblab) out

Feb 3 Recitation 4: Bomb Lab (pdf , pptx , handout , activity)
Feb 4 Machine Prog: Procedures (catchup-pptx , catchup-pdf , pptx , pdf , code , video) SCG 3.7
Feb 6 Machine Prog: Data (pptx , pdf , code , video) SCG 3.8-3.9

Feb 10 Recitation 5: Attack Lab and Stacks (handout , pdf , activity)
Feb 11 Machine Prog: Advanced (pptx , pdf , code , video) SG 3.10 L2 due, L3 (attacklab) out
Feb 13 The Memory Hierarchy (pptx , pdf , video) SG 6.1-6.3

Feb 17 Recitation 6: C Review / C Bootcamp (handout , pdf , activity , C Bootcamp slides pdf)
Feb 18 Cache Memories (pptx , pdf , video , code) SCG 6.4-6.7 L3 due, L4a (cachelabtraces) out
Feb 20 Design and Debugging (pptx , pdf , video) TBD
Feb 21 L4a due, L4b (cachelab) out

Feb 24 Recitation 7: Cache Lab and blocking (pdf)
Feb 25 Code Optimization TBD 5
Feb 27 Linking TBD 7 L4b due

Mar 2 Recitation 8: Exam Review
Mar 3 Dynamic Memory Allocation: Basic TBD 9.9 Midterm exam
Mar 5 Dynamic Memory Allocation: Advanced TBD 9.10-9.13 L5 (malloclab) out

Mar 9 Spring Break - no classes

Mar 16 Recitation 9: Malloc lab (Part I)
Mar 17 Virtual Memory: Concepts TBD 9.1-9.6
Mar 19 Virtual Memory: Systems TBD 9.7-9.8

Mar 23 Recitation 10: Malloc lab (Part II)
Mar 24 ECF: Exceptions & Processes TBD 8.1-8.4 L5a Due
Mar 26 ECF: Signals & Nonlocal Jumps TBD 8.5-8.8

Mar 30 Recitation 11: Processes, signals
Mar 31 System Level I/O TBD 10 L5b Due, L6 (tshlab) out
Apr 2 Network Programming (Part I) TBD 11.1-11.4

Apr 6 Recitation 12: Shell lab
Apr 7 Network Programming (Part II) TBD 11.5-11.6
Apr 9 Concurrent programming TBD 12.1-12.3 L6 Due, L7 (proxylab) out

Apr 13 Recitation 13: Networking and Proxy
Apr 14 Synchronization: Basic TBD 12.4, 12.5.1-3
Apr 16 Carnival - no class

Apr 20 Recitation 14: Synchronization
Apr 21 Synchronization: Advanced TBD 12.5.4-5, 12.7-8 L7a due
Apr 23 Thread-Level Parallelism TBD 12.6

Apr 27 Recitation 15: Exam review
Apr 28 Future of Computing (1) TBD
Apr 30 Future of Computing (2) TBD L7b due

May 4 Final Exam
May 5 Final exam this week or next week as scheduled by the University