Lecture 25: Introduction to Nonblocking I/O
·
Lecture 26: Advanced Nonblocking I/O, Event-Driven Programming
·
Lab 9: Proxy, MapReduce, and Farewells
assign6
In
Lecture 27: Life Beyond CS110, CS110 Jeopardy
·
Lecture 23: Overview of MapReduce
·
Lecture 24: Principles of System Design
·
Lab 8: More Networking
assign7
Out (optional)
No Lecture: Day of Rest
·
Lecture 21: Networks, Servers, System Calls
·
Lecture 22: More Network System Calls
Bryant & O'Hallaron: Sections 4,6 of chapter 3 (reader) or 11 (full textbook)
Lab 7: Networking and Multiprocessing
assign5
In
No Lecture: Day of Rest
assess3
Out
·
Lecture 18: Multithreading Wrap, Ice Cream Parlors
·
Lecture 19: Introduction to Networks, Clients and Servers
Bryant & O'Hallaron: Sections 1-3 of chapter 3 (reader) or 11 (full textbook)
Lab 6: JavaScript Timers, Parallel Compilation
Lecture 20: Networking and Protocols
Bryant & O'Hallaron: Section 5 of chapter 3 (reader) or 11 (full textbook)
Lecture 15: Multithreading, Condition Variables, and Semaphores
Bryant & O'Hallaron: Sections 6 and 7 of Chapter 4 (reader) or 12 (full textbook)
Lecture 16: Multithreading and Networking
·
Lab 5: Threads versus Processes
assign4
In
Lecture 17: Threading and ThreadPools
assess2
Out
·
Lecture 12: Virtual Memory
Bryant & O'Hallaron: Section 3 of Chapter 4 (reader) or 12 (full textbook)
Lecture 13: Threads and Mutexes
Bryant & O'Hallaron: Sections 4 and 5 of Chapter 4 (reader) or 12 (full textbook)
Lab 4: Virtual Memory, Basic Threading
Lecture 14: Threads, Deadlock, Condition Variables
Bryant & O'Hallaron: Sections 4 and 5 of Chapter 4 (reader) or 12 (full textbook)
Lecture 10: Signals, Take I
assess1
In
·
Lab 3: Parallel Programming
Lecture 11: Signals, Take II
·
Lecture 7: Understanding execvp
Bryant & O'Hallaron: Section 5 of Chapter 1 (reader) or 8 (full textbook)
Lecture 8: Pipes and Interprocess Communication, Take I
Lab 2: Multiprocessing and Unix Tools
assign2
In
·
Lecture 9: Pipes and Interprocess Communication, Take II
assess1
Out
·
Lecture 4: Filesystem System Calls
assign1
In,
assign2
Out
·
Lecture 5: Multiprocessing Basics
Lab 1: Filesystems and System Calls
·
Lecture 6: Process Synchronization and Transformation
Bryant & O'Hallaron: Sections 1 - 4 of Chapter 1 (reader) or 8 (full textbook)
Lecture 1: Introductions
·
Lecture 2: Filesystems, Take I
·
Lecture 3: Filesystems, Take II
Saltzer & Kaashoek, Section 2.5
Note that all lectures and assignment deadlines are subject to change.
Our CS110 website imitates that used by University of Washington's CSE373, Spring 2019.