skip to primary navigationskip to content
 

Course pages 2026–27

Advanced Operating Systems

ACS Advanced Operating Systems teaches OS internals, experimental methodology, and systems-research topics through a hands-on, lab-based course using the FreeBSD operating system, the Raspberry Pi 4 board, and JupyterLab.

Course Slack

If you need to reach the instructors, or to chat with other students in the course, please join the Advanced Operating Systems course Slack:

Course handouts

These course handouts provide more detailed information about the module and laboratory environment.

Lecture slides

Lecture slides will be posted here as the module proceeds.

Lecture 1 - Advanced Operating Systems: Through tracing, analysis, and experimentation (in person)

Lecture 2 - Kernels and Tracing (in person)

Lecture 3 - The Process Model (1) (in person)

  • Lecture 3, Part 1: The Process Model
  • Lecture 3, Part 2: Processes in Practice

Lecture 4 - The Process Model (2) (in person)

  • Lecture 4, Part 1: Traps and System Calls
  • Lecture 4, Part 2: Traps and Syscalls in Practice
  • Lecture 4, Part 3: More on VM

Lecture 5 - The Network Stack (1) (in person)

  • Lecture 5, Part 1: Network Stacks
  • Lecture 5, Part 2: Network Stack Implementation
  • Lecture 5, Part 3: Network Stack Research Taster

Lecture 6 - The Network Stack (2) (in person)

  • Lecture 6, Part 1: TCP
  • Lecture 6, Part 2: TCP Implementation
  • Lecture 6, Part 3: Wrapping Up

Lab lecturelet slides (online)

Lab lecturelet slides will be posted here as the module proceeds.

Lab handouts

Lab handouts will be posted here as the module proceeds.

Practice Exercise - Kernel Tracing

Lab 2 - IPC

  • Advanced Operating Systems: Lab 2 - IPC - General Information
  • Advanced Operating Systems: Lab 2 - IPC - Assignment

Lab 3 - TCP

  • Advanced Operating Systems: Lab 3 - TCP - General Information
  • Advanced Operating Systems: Lab 3 - TCP - Assignment

Useful reference material

Lab 2