Lecture 1: Introductions
·
Lecture 2: Filesystems, Take I
·
Lecture 3: Filesystems, Take II
Saltzer & Kaashoek, Section 2.5
Lecture 4: Filesystem System Calls
·
assign1
In,
assign2
Out
·
Lecture 5: File Descriptors and System Calls
·
Lab 1: Filesystems and System Calls
·
Lecture 6: Multiprocessing Intro
Bryant & O'Hallaron: Sections 1 - 4 of Chapter 1 (reader) or 8 (full textbook)
Observing Martin Luther King, Jr. Day: No lecture
·
Lecture 7: waitpid
and execvp
Bryant & O'Hallaron: Section 5 of Chapter 1 (reader) or 8 (full textbook)
Lab 2: Multiprocessing and Unix Tools
assign2
In
·
Lecture 8: Pipes and Interprocess Communication, Take I
·
Lecture 9: Pipes and Interprocess Communication, Take II
·
Lecture 10: Signals, Take I
·
Lab 3: Parallel Programming
Lecture 11: Signals, Take II
·
Lecture 12: Signals and Virtual Memory
Bryant & O'Hallaron: Section 3 of Chapter 4 (reader) or 12 (full textbook)
Lecture 13: Introduction to Multithreading
Bryant & O'Hallaron: Sections 4 and 5 of Chapter 4 (reader) or 12 (full textbook)
Lab 4: Virtual Memory, Basic Threading
Lecture 14: Threads, Race Conditions, and Mutexes
Bryant & O'Hallaron: Sections 4 and 5 of Chapter 4 (reader) or 12 (full textbook)
Lecture 15: Mutexes and Condition Variables
Bryant & O'Hallaron: Sections 6 and 7 of Chapter 4 (reader) or 12 (full textbook)
Lecture 16: Condition Variables and Semaphores
·
Lab 5: Threads versus Processes
assign4
In
Lecture 17: Semaphores and Multithreading Patterns
·
Lecture 18: Multithreading Patterns
·
Lecture 19: Thread Pools and Ice Cream
Lab 6: Read-Write Locks, Parallel Compilation
Observing Presidents Day: No lecture
·
Lecture 20: Introduction to Networks, Clients and Servers
Bryant & O'Hallaron: Sections 1-3 of chapter 3 (reader) or 11 (full textbook)
Lab 7: Networking and Multiprocessing
Lecture 21: Servers and HTTP
Bryant & O'Hallaron: Section 5 of chapter 3 (reader) or 11 (full textbook)
Lecture 22: HTTP and APIs
assign5
In
Bryant & O'Hallaron: Sections 4 and 6 of chapter 3 (reader) or 11 (full textbook)
Lecture 23: APIs and Networking Functions
·
Lab 8: Networking and Servers
Lecture 24: Networking Functions and MapReduce
·
Lecture 25: MapReduce and Course Wrap-Up
·
Day of Rest: No Lecture
·
Day of Rest: No Lecture
assign6
In
·
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.