Operating Systems: Principles and Practice is a textbook for a first course in undergraduate operating systems. In use at dozens of top tier universities, and written by two leading operating systems researchers with decades of experience successfully teaching complex topics to thousands of students, this textbook provides:

  • A path for students to understand high level concepts all the way down to working code.
  • Extensive worked examples integrated throughout the text provide students concrete guidance for completing homework assignments.
  • A focus on up-to-date industry technologies and practice

Part 1: Kernels and Processes

We describe the essential steps needed to isolate programs to prevent buggy applications and computer viruses from crashing or taking control of your system.

Part 2: Concurrency

We provide a concrete methodology for writing correct concurrent programs that is in widespread use in industry, and we explain the mechanisms for context switching and synchronization from fundamental concepts down to assembly code.

Part 3: Memory Management

We explain both the theory and mechanisms behind 64-bit address space translation, demand paging, and virtual machines.

Part 4: Persistent Storage

We explain the technologies underlying modern extent-based, journaling, and versioning file systems.

Course Materials for Instructors

The Instructor Site contains lecture slides, book figures, and code examples.

Recent Articles from the Blog

  • Instructor solution sets

    We have posted solution sets to the exercises in the 2nd edition on the instructor portion of the website. Registration and login is now required...

  • Kindle edition is up!

    We are happy to announce that OSPP, 2nd edition is now available in ebook format via the Kindle app for tablets and smartphones. The ebook...

  • Welcome to OS:PP 2nd Edition!

    Welcome to our new website for Operating Systems: Principles and Practice, second edition, by Tom Anderson and Mike Dahlin. We have put together in one...