CS110: Principles of Computer Systems, Autumn 2021

Announcements

  • Tuesday, Oct 19: Happy Tueday, all! I hope Assignment 3 is coming together and you're all feeling like multiprocessing champions!
    Announcements:
    • Assignment 3 is due tonight at the stroke of 11:59pm. Woo.
    • Assignment 4 is is up! This one leads you through the implementation of a fully operational terminal that supports job control, process groups, pipelines, and input and output file redirection. You'll be using more of your fork/execvp/waitpid superpowers, but you'll also be using pipes, descriptor duplication, synchronous signal handling, pipe2, sigwait, and other directives if you're to arrive at a working product.
    • We're in the process of grading your first assessment right now, and we should have something for you on Friday.

Schedule

Week 1
Topic
Materials
Assignments
Readings
Week 1
Mon, Sep 20
Lecture 1: Introductions
·
Tue, Sep 21

assign1 Out
·
Wed, Sep 22
Lecture 2: Filesystems, Take I
·
Fri, Sep 24
Lecture 3: Filesystems, Take II
Saltzer & Kaashoek, Section 2.5
Week 2
Mon, Sep 27
Lecture 4: Filesystem System Calls
Tue, Sep 28
assign1 In, assign2 Out
·
Wed, Sep 29
Lecture 5: Multiprocessing Basics
Thu, Sep 30
Lab 1: Filesystems and System Calls
·
Fri, Oct 1
Lecture 6: Process Synchronization and Transformation
Bryant & O'Hallaron: Sections 1 - 4 of Chapter 1 (reader) or 8 (full textbook)
Week 3
Mon, Oct 4
Lecture 7: Understanding execvp
Bryant & O'Hallaron: Section 5 of Chapter 1 (reader) or 8 (full textbook)
Wed, Oct 6
Lecture 8: Pipes and Interprocess Communication, Take I
Thu, Oct 7
Lab 2: Multiprocessing and Unix Tools
assign2 In
·
Fri, Oct 8
Lecture 9: Pipes and Interprocess Communication, Take II
assess1 Out
·
Week 4
Mon, Oct 11
Lecture 10: Signals, Take I
assess1 In
·
Tue, Oct 12
assign3 Out
Wed, Oct 13
Day of Rest
·
Thu, Oct 14
Lab 3: Parallel Programming
Fri, Oct 15
Lecture 11: Signals, Take II
·
Week 5
Mon, Oct 18
Lecture 12: Virtual Memory
Bryant & O'Hallaron: Section 3 of Chapter 4 (reader) or 12 (full textbook)
Tue, Oct 19
assign3 In, assign4 Out
Wed, Oct 20
Lecture 13: Threads and Mutexes
Bryant & O'Hallaron: Sections 4 and 5 of Chapter 4 (reader) or 12 (full textbook)
Thu, Oct 21
Lab 4: Virtual Memory, Basic Threading
Fri, Oct 22
Lecture 14: Threads, Deadlock, Condition Variables
Bryant & O'Hallaron: Sections 4 and 5 of Chapter 4 (reader) or 12 (full textbook)

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.