- Instructors: Frans Kaashoek, et al.
- Textbook:
- xv6: A simple, Unix-like teaching operating system
- The C programming language (second edition)
- URL: https://pdos.csail.mit.edu/6.828/2018/index.html
- Operating systems
- PC hardware and x86 programming
- C and gdb
- Shell and OS orgamization
- Isolation mechanisms
- Virtual memory (1)
- Virtual memory (2)
- System calls, interrupts, exceptions
- Multiprocessors and locking
- Lock abstraction
- Could locking be automatics?
- Deadlock
- Lock granularity
- Locking in xv6
- Lock implementation
- Atomic instructions
- Spinlock
- Advices for locking
- Processes and switching
- Sleep and wakeup
- File systems
- Crash recovery
- File system performance and fast crash recovery
- Virtual memory (3)
- OS organization
- Kernels and HLL
- Scalable locks
- Cache coherence
- MESI protocol
- Non-scalable lock problem
- MCS locks
- Scaling OSes slides
- Virtual machines (1)
- Virtual machines (2)
- High-performance networking