Anything on the schedule more than 24 hours in advance is subject to change.
From source code to running program
Week |
Day |
Description |
Readings |
Notes |
1 |
1/13 |
intro |
none |
|
1 |
1/15 |
linking intro |
7.1-7.5 |
|
2 |
1/20 |
linking and loading |
7.6-7.9 |
|
2 |
1/22 |
dynamic linking |
7.10-7.12 |
|
Exceptional control flow and the user-kernel boundary
Week |
Day |
Description |
Readings |
Notes |
3 |
1/27 |
Exceptions and Processes |
8.0-8.2 |
|
3 |
1/29 |
Syscalls and Process Control |
8.3-8.4 |
|
4 |
2/3 |
Signals |
8.5.0-8.5.4 |
|
4 |
2/5 |
Shell makeup |
no reading |
|
5 |
2/10 |
Signals for real |
8.5.0-8.5.4 |
|
Memory Management and Virtual Memory
Week |
Day |
Description |
Readings |
Notes |
5 |
2/12 |
Virtual Addressing |
9.0-9.3.6 |
|
6 |
2/17 |
Memory Management |
9.4 - 9.6 |
|
6 |
2/19 |
Memory Mapping & Allocation |
9.8-9.9 |
|
7 |
2/24 |
Garbage Collection |
9.10 |
|
7 |
2/26 |
Midterm |
|
See Piazza for “off limits” sections |
8 |
3/3 |
Implementing malloc and free |
9.9 |
quiz on video, not reading |
8 |
3/5 |
Midterm debriefing |
|
watch video: no in-person class |
Enhanced I/O Functionality
Week |
Day |
Description |
Readings |
Notes |
9 |
3/10 |
Files |
10.0 - 10.3 |
|
9 |
3/12 |
Sockets |
11.4 |
|
10 |
3/17 |
Internet basics |
11.3 |
|
10 |
3/19 |
Midterm 2 |
|
See Piazza for covered sections |
Coordinating with other processes
Week |
Day |
Description |
Readings |
Notes |
11 |
3/31 |
Concurrency intro |
12.1-12.2 |
|
11 |
4/2 |
Concurrent programming |
12.4-12.5 |
|
12 |
4/7 |
Concurrent programming cont’d |
12.6 |
review 12.5 for class content |
12 |
4/9 |
Parallel programming |
12.7 |
|