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

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 15 Introductions (pptx , pdf) L0 (cprogramminglab) out (pdf, tar)
May 16 Overview GK 1
May 17 Binary-based Representation and Integers (pptx , pdf , code) Integers 2.1-2.3 L1 (datalab) out
May 18 Floating Point (pptx , pdf) GK 2.4

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

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

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

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

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

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

Jul 3 Small group L5 (malloclab) out
Jul 4 Independence Day -- No class GK
Jul 5 Virtual Memory: Concepts (pptx , pdf) GK 9.1-9.6
Jul 6 Virtual Memory: Systems (pptx , pdf) GK 9.7-9.8

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

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

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

Jul 31 Small groups
Aug 1 Synchronization (pptx , pdf) GK 12.5.4-5, 12.7-8
Aug 2
Aug 3 Thread-Level Parallelism (pptx , pdf) GK 12.6 L7 (proxylab) checkpoint due

Aug 7 Small groups
Aug 8 Exam review GK
Aug 9
Aug 10 Course wrap-up GK
Aug 11 Final Exam L7 due