18-213/18-613: Computer Systems, Summer 2022

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   Reading   Labs

May 16 Introductions L0 (cprogramminglab) out (pdf, tar)
May 17 Overview GK 1
May 18 Binary-based Representation and Integers (pptx , pdf , code) Integers 2.1-2.3 L1 (datalab) out
May 19 Floating Point (pptx , pdf) GK 2.4

May 23 Small groups
May 24 Machine Prog: Basics (pptx , pdf) GK 3.1-3.5
May 25 Machine Prog: Control (pptx , pdf) GK 3.6 L1 due, L2 (bomblab) out
May 26 Machine Prog: Procedures (pptx , pdf) GK 3.7

May 30 Small groups
May 31 Machine Prog: Data (pptx , pdf , code) GK 3.8-3.9
Jun 1 Machine Prog: Advanced (pptx , pdf) GK 3.10 L2 due, L3 (attacklab) out
Jun 2 The Memory Hierarchy (pptx , pdf) GK 6.1-6.3

Jun 6 Small groups
Jun 7 Cache Memories (pptx , pdf) GK 6.4-6.7
Jun 8
Jun 9 Code Optimization (pptx , pdf) GK 5,7 L3 due, L4 (cachelab) out

Jun 13 Small groups
Jun 14 Dynamic Memory Allocation Basic (pptx , pdf , code) GK 9.9
Jun 15 L4 checkpoint submission
Jun 16 Dynamic Memory Allocation Advanced (pptx , pdf) GK 9.10-9.12

Jun 20 Juneteeth -- No classes Monday (Small groups reschedule)
Jun 21 Mid-term exam review (Whiteboard work, see video)
Jun 22 L4 due
Jun 23 Linking (pptx , pdf) GK 7
Jun 24 L5 (malloclab) released for preview

Jun 27 Mid-Session Break
Jun 28 Mid-Session Break Break
Jun 29 Mid-Session Break Break
Jun 30 Mid-Session Break Break

Jul 4 Independence Day -- No classes Monday (Small groups reschedule) L5 (malloclab) out
Jul 5 Virtual Memory: Concepts (pptx , pdf) GK 9.1-9.6
Jul 6
Jul 7 Virtual Memory: Systems (pptx , pdf) GK 9.7-9.8

Jul 11 Small groups
Jul 12 ECF: Exceptions & Processes (pptx , pdf , code) GK 8.1-8.4 L5 checkpoint due
Jul 13
Jul 14 Exceptions, Signals and Non-Local Jumps (pptx , pdf , code) GK 8.5-8.8

Jul 18 Small groups L5 due, L6 (tshlab) out
Jul 19 System Level I/O (pptx , pdf) GK 10
Jul 20
Jul 21 Concurrent programming and Mutexes (pptx , pdf) GK 12.1-12.5.3

Jul 25 Small groups
Jul 26 Networking Overview I (pptx , pdf) GK 11.1-11.4
Jul 27
Jul 28 Networking Overview, cont (pptx , pdf) GK 11.1-11.4
Jul 29 L6 Due, L7 (proxylab) out

Aug 1 Small groups
Aug 2 Network Programming (pptx , pdf) Programming
Aug 3
Aug 4 Synchronization (pptx , pdf) GK 12.5.4-5, 12.7-8 L7 (proxylab) checkpoint due

Aug 8 Small groups
Aug 9 Thread-Level Parallelism (pptx , pdf) GK 12.6
Aug 10
Aug 11 Course wrap-up GK
Aug 12 Final Exam L7 due