CS110
  • Calendar(current)
  • Piazza(current)
  • Labs
    Lab Signup Lab 1 - Filesystems   Solution to Lab 1 - Filesystems Lab 2 - Multiprocessing and Unix Tools   Solution to Lab 2 - Multiprocessing and Unix Tools Lab 3 - Parallel Processing   Solution to Lab 3 - Parallel Processing Lab 4 - Assign 3 Redux   Solution to Lab 4 - Assign 3 Redux Lab 5 - RW Locks, Event Barriers, Hello Servers   Solution to Lab 5 - RW Locks, Event Barriers, Hello Servers Lab 6 - ThreadPool and Networking   Solution to Lab 6 Lab 7 - Proxy Redux   Solution to Lab 7
  • Office Hours(current)
  • Lectures
    Week 1 Lecture 1 - Introduction   - Screencast Lecture 2 - File Systems Lecture 3 - Lecture 03 - Layering, Naming, and Filesystem Design   - Screencast Week 2 Lecture 4 - Filesystem Data Structures and System Calls Lecture 5 - Understanding execvp   - Screencast Week 3 Lecture 6 - execvp, Pipes, and Interprocess Communication Lecture 7 - Signals   - Screencast Week 4 Lecture 8 - Race Conditions, Deadlock, and Data Integrity Lecture 9 - Introduction to Threads   - Screencast Week 5 Lecture 10 - From C threads to C++ threads Lecture 11 - Multithreading, Condition Variables, and Semaphores Week 6 Lecture 12 - Multithreading Design Patterns and Thread-Safe Data Structures Week 7 Lecture 14 - Virtualization and Caching Lecture 15 - Networking, Clients   - Screencast Week 8 Lecture 15b - API Servers   - Screencast Lecture 16 - Networks, HTTP, Proxies, and MapReduce Week 9 Lecture 17 - MapReduce Lecture 18 - Principles of System Design   - Screencast Week 10 Lecture 19 - Events, Threads, and Asynchronous I/O Lecture 20 - Systems Today   - Screencast
  • Handouts
    Course Information Course Outline
  • Assignments
    Assignment 1 - Six Degrees of Kevin Bacon Assignment 2 - Unix v6 File Systems Assignment 3 - All Things Multiprocessing Assignment 4 - Stanford Shell Assignment 5 - RSS News Feed Aggregator Assignment 6 - ThreadPool Assignment 7 - Web Proxy and Cache Assignment 8 - MapReduce
  • Gradebook(current)