CS 161
Schedule
Documentation
C++
Lists
Memory layout
Contexts
Memory iterators
Debugging Chickadee
Spinlocks
Synchronization invariants
Wait queues
ChickadeeFS
Journal
2019 Final
Problem sets
Problem set 1
Problem set 2
Problem set 3
Problem set 4
Problem set 5
Lectures
Lecture 2: Isolation and exceptions
Lecture 3: Virtual memory
Lecture 4: Interrupts and buddy allocation
Lecture 5: Buddy allocation, testing
Lecture 6: Testing and concurrency
Lecture 7: Contexts
Lecture 9: Blocking and wait queues
Lecture 10: System call semantics and kernel design
Lecture 11: Spinlock debugging
Lecture 12: Disks and file systems
Lecture 13: VFS presentations
Lecture 19: Finite journals
Lecture 20: Device interaction
Lecture 21: Synchronization I
Lecture 22: Synchronization II
Lecture 23: Synchronization III
Lecture 24: Virtualization
Lecture 25: Virtualization II
Sections
Section 1: Kernel architecture
Section 2: Operating system evolution
Section 2 Notes
Section 3: Project directions
Section 4: Scalability and OS design
Section 5: Rethinking the process abstraction
Exercises
Suspension
System calls
Schedule
Ha!