Date |
Lecture/Recitation |
Instructors |
Reading |
Labs |
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-213 lectures are presented by Profs. David Andersen (dga), Nathan Beckmann (beckmann) or Ranysha Ware (rware) as indicated in the schedule.
- All times (unless otherwise noted) are in Eastern Time.
Schedule (subject to change)
|
|
Jan |
14 |
Overview
(pdf, pptx, L0-writeup)
|
dga |
1 |
L0 (cprogramminglab) out
|
|
Jan |
16 |
Bits, Bytes, & Integers
(pdf, pptx)
|
dga |
2.1-2.3 |
L1 (datalab) out
|
|
Jan |
17 |
Recitation 1: Introduction, Datalab
(pdf, slides, soln)
|
|
|
|
|
|
Jan |
19 |
Bootcamp 1: Linux, Command Line, Git
(slides, handout, tar)
|
|
|
|
|
Jan |
21 |
Machine Prog: Basics
(pdf, pptx, activity, soln)
|
rware |
3.1-3.5 |
L0 due
|
|
Jan |
23 |
Machine Prog: Control
(pdf, pptx, activity, soln)
|
rware |
3.6 |
L2 (bomblab) out
|
|
Jan |
24 |
Recitation 2: Bomb Lab
(pdf, slides)
|
|
|
|
|
|
Jan |
26 |
Bootcamp 2: Debugging & GDB
(slides, handout, tar)
|
|
|
|
|
Jan |
28 |
Machine Prog: Procedures
(pdf, pptx, activity, soln)
|
rware |
3.7 |
L1 due
|
|
Jan |
30 |
Machine Prog: Data
(pdf, pptx, activity, soln)
|
rware |
3.8-3.9, 3.11 |
|
|
Jan |
31 |
Recitation 3: Bomb Lab part 2
|
|
|
|
|
|
Feb |
04 |
Machine Prog: Advanced
|
rware |
3.10 |
|
|
Feb |
06 |
Design and Debugging
|
dga |
9.10-9.12 |
L2 due, L3 (attacklab) out
|
|
Feb |
07 |
Recitation 4: Attack Lab and Stacks
|
|
|
|
|
|
Feb |
09 |
Bootcamp 3: GCC & Build Automation
|
|
|
|
|
Feb |
11 |
The Memory Hierarchy
|
dga |
6.1-6.3 |
|
|
Feb |
13 |
Cache Memories
|
dga |
6.4-6.7 |
L3 due, L4 (cachelab) out
|
|
Feb |
14 |
Recitation 5: Caches and C Review
|
|
|
|
|
|
Feb |
16 |
Bootcamp 4: C Programming
|
|
|
|
|
Feb |
18 |
Virtual Memory: Concepts
|
beckmann |
9.1-9.6 |
|
|
Feb |
20 |
Virtual Memory: Details
|
beckmann |
9.7-9.8 |
|
|
Feb |
21 |
Recitation 6: Caches & Blocking
|
|
|
|
|
|
Feb |
25 |
Dynamic Memory Allocation: Basic
|
dga |
9.9 |
|
|
Feb |
27 |
Dynamic Memory Allocation: Advanced
|
dga |
9.10-9.12 |
L4 due, L5 (malloclab) out
|
|
Feb |
28 |
Recitation 7: Malloclab (Part I)
|
|
|
|
|
|
Mar |
04 |
No class—spring break
|
|
|
|
|
Mar |
06 |
No class—spring break
|
|
|
|
|
Mar |
07 |
No recitation—spring break
|
|
|
|
|
|
Mar |
11 |
Code Optimization
|
dga |
5 |
|
|
Mar |
13 |
Linking
|
dga |
7 |
|
|
Mar |
14 |
Recitation 8: Malloclab (Part II)
|
|
|
|
|
|
Mar |
16 |
Bootcamp 5: Post-checkpoint Malloc
|
|
|
|
|
Mar |
18 |
Processes and Multitasking
|
beckmann |
8.1-8.4 |
L5a (malloc checkpoint) due
|
|
Mar |
20 |
Exceptional Control Flow
|
beckmann |
8.5-8.8 |
|
|
Mar |
21 |
Recitation 9: Processes and Shells
|
|
|
|
|
|
Mar |
25 |
System Level I/O and File Systems
|
rware |
10 |
L5b (malloc final) due, L6 (tshlab) out
|
|
Mar |
27 |
File Systems / Network Programming (Part I)
|
rware |
11.1-11.4 |
|
|
Mar |
28 |
Recitation 10: Tshlab
|
|
|
|
|
|
Apr |
01 |
Network Programming (Part II)
|
rware |
11.4-11.6 |
|
|
Apr |
03 |
No class—spring carnival
|
|
|
|
|
Apr |
04 |
Recitation 11: Networking and Proxies
|
|
|
|
|
|
Apr |
08 |
Concurrent Programming
|
beckamnn |
12.1-12.3 |
L6 due, L7 (proxylab) out
|
|
Apr |
10 |
Synchronization: Basic
|
beckamnn |
12.4, 12.5.1-3 |
|
|
Apr |
11 |
Recitation 12: Synchronization
|
|
|
|
|
|
Apr |
15 |
Synchronization: Advanced
|
beckamnn |
12.5.4-5, 12.7-8 |
L7 due, L8 (sfslab) out
|
|
Apr |
17 |
Thread-Level Parallelism
|
beckamnn |
12.6 |
|
|
|
Apr |
22 |
TBD
|
TBD |
|
|
|
Apr |
24 |
Frontiers of Computing
|
beckamnn |
|
L8 due
|
|
Apr |
25 |
Recitation 13: Exam Review
|
|
|
|
|
|
Apr |
27 |
Bootcamp 6: Exam Review
|
|
|
|