Date |
Lecture/Groups |
Lec By |
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
Schedule (subject to change)
|
Jan |
12 |
18-613 Special! (Anyone can watch): EGO's Linux Bootcamp (mp4) |
|
|
L0 (cprogramminglab) out (pdf, tar) |
|
Jan |
14 |
Overview (pptx , pdf , code) |
SK |
1 |
|
|
Jan |
15 |
Small groups: Introductions, Overview of the role of group and TAs, Getting started with the shark machines, Overview of Lab 0 |
|
Jan |
16 |
Bits, Bytes, Integers, & Endianness (pptx , pdf , code) |
SK |
2.1-2.3 |
L1 (datalab) out |
|
|
Jan |
21 |
Floating Point (pptx , pdf) |
SK |
2.4 |
L0 (cprogramminglab) 1st deadline |
|
Jan |
22 |
Bit ops, Int rep, Endianness, Lean forward to Data Lab int puzzles. Groups reschedule meeting for later in week. |
|
Jan |
23 |
Machine Prog: Basics |
SK |
3.1-3.5 |
|
|
|
Jan |
28 |
Machine Prog: Control |
SK |
3.6 |
L1 due, L2 (bomblab) out |
|
Jan |
29 |
Small groups: Floating point, Unbox bomb, "Example bomb" |
|
Jan |
30 |
Machine Prog: Procedures |
SK |
3.7 |
|
|
|
Feb |
4 |
Machine Prog: Data |
SK |
3.8-3.9,3.11 |
|
|
Feb |
5 |
Small groups: Assembly and Stack review and old exam problems |
|
Feb |
6 |
Machine Prog: Advanced |
SK |
3.10 |
L0 2nd deadline |
|
|
Feb |
11 |
The Memory Hierarchy |
SK |
6.1-6.3 |
|
|
Feb |
12 |
Small groups: Attack lab related material, esp. gadgets |
|
Feb |
13 |
Cache Memories |
SK |
6.4-6.7 |
L3 due, L4 (cachelab) out |
|
|
Feb |
18 |
Virtual Memory: Concepts |
GK |
9.1-9.6 |
|
|
Feb |
19 |
Small groups: Memory hierarchy and locality exam problems, cache organization, cache traces and old exam problems. |
|
Feb |
20 |
Virtual Memory: Details |
GK |
9.7-9.8 |
|
|
|
Feb |
25 |
Dynamic Memory Allocation: Basics |
GK |
9.9 |
Midterm out |
|
Feb |
26 |
Small groups: midterm review, VM reinforcement, traces |
|
Feb |
27 |
Dynamic Memory Allocation: Advanced |
GK |
9.10-9.12 |
L4 due |
|
Feb |
28 |
|
|
Midterm Due |
|
|
Mar |
4 |
No class -- University break |
break |
|
|
|
Mar |
5 |
Small groups don't meet -- University break |
|
Mar |
6 |
No class -- University break |
break |
|
|
|
|
Mar |
11 |
Design and Debugging |
GK |
|
L5 (malloclab) out |
|
Mar |
12 |
Small groups: Malloc review, gdb, valgrind, Malloc lab unboxing |
|
Mar |
13 |
Linking |
GK |
7 |
|
|
|
Mar |
18 |
ECF: Exceptions & Processes |
GK |
8.1-8.4 |
L5 checkpoint due |
|
Mar |
19 |
Small groups: Heap checker cases, removing footers, malloc trace exam problems, etc. |
|
Mar |
20 |
ECF: Signals |
GK |
8.5 |
|
|
|
Mar |
25 |
System Level I/O |
GK |
10 |
L5 due, L6 (tshlab) out |
|
Mar |
26 |
Small groups: Fork bomb with signals, Unbox tsh lab |
|
Mar |
27 |
Network Programming (Part I) |
SK |
11.3-11.4 |
|
|
|
Apr |
1 |
Network Programming (Part II) |
SK |
11.4-11.6 |
|
|
Apr |
2 |
Small groups: I/O bomb problems, files and redirection in tshlab. |
|
Apr |
3 |
No class: Carnival |
Carnival |
|
|
|
Apr |
7 |
|
|
L6 Due, L7 (proxylab) out |
|
|
Apr |
8 |
Concurrent programming |
SK |
12.1-12.3 |
|
|
Apr |
9 |
Small groups: Proxylab unboxing. Heavy emphasis on role of proxy and parts of lab. |
|
Apr |
10 |
Synchronization: Basic |
GK |
12.4-12.5.3 |
|
|
Apr |
14 |
|
|
L7 checkpoint due |
|
|
Apr |
15 |
Synchronization: Advanced |
GK |
12.5.4-5, 12.7-8 |
|
|
Apr |
16 |
Small groups: Critical resources, critical sections, mutex problems, at-most-n and sempahore problems |
|
Apr |
17 |
Thread-Level Parallelism |
GK |
12.6 |
|
|
|
Apr |
22 |
Code optimization and wrap-up |
GK |
5 |
|
|
Apr |
23 |
Small groups: Final exam review |
|
Apr |
24 |
Wrap-up |
|
|
|
|
Apr |
25 |
|
|
L7 due |