18-213/18-613: Computer Systems, Spring 2026

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

Schedule (subject to change)

Date Lecture/Groups Lec By   Reading   Labs

Jan 12 18-613 Special! (Anyone can watch): EGO's Linux Bootcamp (mp4) L0 (cprogramminglab) out (pdf, tar)
Jan 13 Overview (pptx , pdf , code) SK 1
Jan 14 Small groups: Introductions, Overview of the role of group and TAs, Getting started with the shark machines, Overview of Lab 0
Jan 15 Bits, Bytes, Integers, & Endianness (pptx , pdf , code) L1 (datalab) out

Jan 20 Floating Point (pptx , pdf) GK 2.4 L0 (cprogramminglab) 1st deadline
Jan 21 Bit ops, Int rep, Endianness, Lean forward to Data Lab int puzzles. Groups reschedule meeting for later in week.
Jan 22 Machine Prog: Basics (pptx , pdf) SK 3.1-3.5

Jan 27 Machine Prog: Control (pptx , pdf , code) SK 3.6 L1 due, L2 (bomblab) out
Jan 28 Small groups: Floating point, Unbox bomb, "Example bomb"
Jan 29 Machine Prog: Procedures (pptx , pdf , code) SK 3.7

Feb 3 Machine Prog: Data (pptx , pdf) SK 3.8-3.9,3.11
Feb 4 Preview attacklab w/miniattack lab
Feb 5 Machine Prog: Advanced (pptx , pdf , code) GK 3.10 L2 due, L3 (attacklab) out

Feb 10 The Memory Hierarchy (pptx , pdf) SK 6.1-6.3 L0 2nd deadline (Monday Feb 10th)
Feb 11 Small group: Unbox cache lab
Feb 12 Cache Memories (pptx , pdf) SK 6.4-6.7 L3 due, L4 (cachelab) out

Feb 17 Linking (pptx , pdf) SK 7
Feb 18 Small groups: Exam prep
Feb 19 Midterm Exam

Feb 24 Dynamic Memory Allocation: Basics (pptx , pdf , code) GK 9.9
Feb 25 Small groups: midterm review, VM reinforcement, traces
Feb 26 Dynamic Memory Allocation: Advanced (pptx , pdf) SK 9.10-9.12 L4 due

Mar 3 No class -- University break break
Mar 4 Small groups don't meet -- University break
Mar 5 No class -- University break break

Mar 10 Virtual Memory: Concepts (pptx , pdf) GK 9.1-9.6 L5 (malloclab) out
Mar 11 Small groups: Malloc review, gdb, valgrind, Malloc lab unboxing
Mar 12 Virtual Memory: Details (pptx , pdf) GK 9.7-9.8

Mar 17 ECF: Exceptions & Processes (pptx , pdf , code) GK 8.1-8.4 L5 checkpoint due
Mar 18 Small groups: Heap checker cases, removing footers, malloc trace exam problems, etc.
Mar 19 ECF: Signals (pptx , pdf , code) GK 8.5

Mar 24 System Level I/O (pptx , pdf , code) SK 10 L5 due, L6 (tshlab) out
Mar 25 Small groups: Fork bomb with signals, Unbox tsh lab
Mar 26 Network Programming (Part I) (pptx , pdf , code) SK 11.3-11.4

Mar 31 Network Programming (Part II) (pptx , pdf , code) SK 11.4-11.6 L6 checkpoint
Apr 1 Small groups: I/O bomb problems, files and redirection in tshlab.
Apr 2 Concurrent programming (pptx , pdf , code) GK 12.1-12.3

Apr 7 Synchronization: Basic (pptx , pdf , code) GK 12.4-12.5.3 L6 Due, L7 (proxylab) out
Apr 8 Small groups: Proxylab unboxing. Heavy emphasis on role of proxy and parts of lab.
Apr 9 No class: Carnival Carnival

Apr 14 Synchronization: Advanced (pptx , pdf , code) GK 12.5.4-5, 12.7-8
Apr 15 Small groups: Critical resources, critical sections, mutex problems, at-most-n and sempahore problems
Apr 16 Thread-Level Parallelism (pptx , pdf , code) GK 12.6 L7 checkpoint due

Apr 21 Code optimization (pptx , pdf) GK 5
Apr 22 Small groups: Final exam review
Apr 23 "Future of Computing" and Wrap-up
Apr 24 L7 due