15-213/18-213/14-513/15-513/18-613: Intro to Computer Systems, Fall 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
  • 15/18-213 lectures are presented by either Prof. Brian Railing (bpr) or Prof. Brandon Lucia (BL) as indicated in the schedule.
  • 14-513 lectures are presented by Prof. David Varodayan
  • 18-613 lectures are presented by Prof. Phil Gibbons

Schedule (subject to change)

Date Lecture/Recitation 213 Lec   Reading   Labs

Aug 31 Recitation 1: No recitation--Semester starts with first lecture
Sep 1 Overview (pptx , pdf) bpr/BL 1 L0 (cprogramminglab) out
Sep 3 Bits, Bytes, & Integers I (pptx , pdf) BL 2.1
Sep 4 Bootcamp 1: Linux, Command Line, Git @ 7-9 pm ET

Sep 7 Recitation 2: No recitations--Labor Day
Sep 8 Bits, Bytes, & Integers II (pptx , pdf) BL 2.2-2.3 L1 (datalab) out
Sep 9 Bootcamp 2: GCC & Build Automation @ 7-9 pm ET
Sep 10 Floating Point (pptx , pdf) bpr 2.4 L0 due
Sep 11 Bootcamp 3: Debugging & GDB @ 7-9 pm ET

Sep 14 Recitation 3: Datalab and Data Representations (handout , solutions , slides)
Sep 15 Machine Prog: Basics (pptx , pdf) BL 3.1-3.5
Sep 17 Machine Prog: Control (pptx , pdf) BL 3.6 L1 due, L2 (bomblab) out

Sep 21 Recitation 4: Bomb Lab
Sep 22 Machine Prog: Procedures bpr 3.7
Sep 24 Machine Prog: Data bpr 3.8-3.9

Sep 28 Recitation 5: C Review / C Bootcamp
Sep 29 Machine Prog: Advanced TBD 3.10 L2 due, L3 (attacklab) out
Oct 1 The Memory Hierarchy TBD 6.1-6.3

Oct 5 Recitation 6: Attack Lab and Stacks
Oct 6 Cache Memories TBD 6.4-6.7
Oct 8 Design and Debugging TBD L3 due, L4 (cachelab) out

Oct 12 Recitation 7: Cache Lab and blocking
Oct 13 Code Optimization TBD 5
Oct 15 Linking TBD 7

Oct 19 Recitation 8: TBD
Oct 20 Dynamic Memory Allocation: Basic TBD 9.9 L4 due, L5 (malloclab) out
Oct 22 Dynamic Memory Allocation: Advanced TBD 9.10-9.13

Oct 26 Recitation 9: Malloc lab (Part I)
Oct 27 Virtual Memory: Concepts TBD 9.1-9.6
Oct 29 Virtual Memory: Systems TBD 9.7-9.8 L5a Due

Nov 2 Recitation 10: Malloc lab (Part II)
Nov 3 ECF: Exceptions & Processes TBD 8.1-8.4
Nov 5 ECF: Signals & Nonlocal Jumps TBD 8.5-8.8

Nov 9 Recitation 11: Processes, signals
Nov 10 System Level I/O TBD 10 L5b Due, L6 (tshlab) out
Nov 12 Network Programming (Part I) TBD 11.1-11.4

Nov 16 Recitation 12: Shell lab
Nov 17 Network Programming (Part II) TBD 11.5-11.6
Nov 19 Concurrent programming TBD 12.1-12.3

Nov 23 Recitation 13: Networking and Proxy L6 Due, L7 (proxylab) out
Nov 24 No lecture--Thanksgiving
Nov 26 No lecture--Thanksgiving

Nov 30 Recitation 14: Synchronization
Dec 1 Synchronization: Basic TBD 12.4, 12.5.1-3
Dec 3 Synchronization: Advanced TBD 12.5.4-5, 12.7-8 L7a due

Dec 7 Recitation 15: Exam review
Dec 8 Thread-Level Parallelism TBD 12.6
Dec 10 Future of Computing TBD L7b due

Dec 13 Exam Review
Dec 14 Final Exam
Dec 15 Exam this week as scheduled by the University University