18-213/18-613: 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
  • 18-213 lectures are presented by either Prof. Phil Gibbons (PG) or Prof. Swarun Kumar (SK) as indicated in the schedule.
  • 18-613 lectures are presented by Prof. Greg Kesden

Schedule (subject to change)

Date Lecture/Groups 213 Lec   Reading   Labs

Aug 30 No recitation or small group--class starts 8/31 L0 (cprogramminglab) out (pdf, tar)
Aug 31 Overview (code , pptx , pdf) PG/SK 1
Sep 2 Bits, Bytes, & Integers (pptx , pdf , code) SK 2.1-2.3 L1 (datalab) out (pdf, tar)

Sep 6 Labor Day: Small groups decide when to meet this week
Sep 7 Floating Point (pptx , pdf) SK 2.4 L0 (cprogramminglab) 1st deadline
Sep 9 Machine Prog: Basics (pptx , pdf) SK 3.1-3.5

Sep 13 Small groups
Sep 14 Machine Prog: Control (pptx , pdf) PG 3.6 L1 due, L2 (bomblab) out
Sep 16 Machine Prog: Procedures (pptx , pdf) PG 3.7

Sep 20 Small groups
Sep 21 Machine Prog: Data (pptx , pdf) SK 3.8-3.9
Sep 23 Machine Prog: Advanced (pptx , pdf , code) SK 3.10 L2 due, L3 (attacklab) out

Sep 26 Linux Bootcamp (slides , shell , git)
Sep 27 Small groups L0 2nd deadline
Sep 28 The Memory Hierarchy (pptx , pdf) PG 6.1-6.3
Sep 30 Cache Memories (pptx , pdf) PG 6.4-6.7 L3 due, L4 (cachelab) out

Oct 4 Small groups
Oct 5 Design and Debugging (pptx , pdf) SK
Oct 7 Dynamic Memory Allocation: Basic (pptx , pdf , code) SK 9.9

Oct 11 Small groups HW 5/6 (low stakes midterm) out
Oct 12 Dynamic Memory Allocation: Advanced (pptx , pdf) SK 9.10-9.12
Oct 14 No class -- University break break
Oct 15 L4 due, L5 (malloclab) out
Oct 17 HW 5/6 (low stakes midterm) due

Oct 18 Small groups
Oct 19 Virtual Memory: Concepts (pptx , pdf) PG 9.1-9.6
Oct 21 Virtual Memory: Systems (pptx , pdf) PG 9.7-9.8

Oct 25 Small groups
Oct 26 Code Optimization and Linking (pptx , pdf) PG 5,7 L5 checkpoint due
Oct 28 ECF: Exceptions & Processes (pptx , pdf , code) SK 8.1-8.4

Nov 1 Small groups
Nov 2 ECF: Signals & Nonlocal Jumps (pptx , pdf , code) SK 8.5-8.8 L5 due, L6 (tshlab) out
Nov 4 System Level I/O (pptx , pdf , code) SK 10

Nov 8 Small groups
Nov 9 Network Programming (Part I) (pptx , pdf) PG 11.1-11.4
Nov 11 Network Programming (Part II) (pptx , pdf , code) SK 11.4-11.6

Nov 15 Small groups
Nov 16 Concurrent programming (pptx , pdf , code) PG 12.1-12.3 L6 Due, L7 (proxylab) out
Nov 18 Synchronization: Basic (pptx , pdf , code) PG 12.4, 12.5.1-3

Nov 22 Small groups
Nov 23 Synchronization: Advanced (pptx , pdf , code) PG 12.5.4-5, 12.7-8 L7 checkpoint due
Nov 25 No class — University break break

Nov 29 Small groups
Nov 30 Thread-Level Parallelism (pptx , pdf) PG 12.6
Dec 2 Future of Computing PG/SK L7 due