Operating System Design and Implementation
Official Documentation
- Linux Kernel Documentation
- Link
- FreeBSD Documentation
- Link
- ReactOS Documentation
- Link
- seL4 Microkernel Documentation
- Link
Research Papers
- "Exokernel: An Operating System Architecture for Application-Level Resource Management" by Dawson R. Engler et al. (1995)
- Link
- "The Performance of µ-Kernel-Based Systems" by Härtig et al. (1997)
- Link
- "Singularity: Rethinking the Software Stack" by Galen C. Hunt and James R. Larus (2007)
- Link
Additional Online Resources
- OSDev.org
- Link
- The Little Book About OS Development
- Link
- Writing a Simple Operating System from Scratch
- Link
Books
- "Operating Systems: Design and Implementation" by Andrew S. Tanenbaum and Albert S. Woodhull
- ISBN: 0131429388
- A comprehensive guide to OS design and implementation, using MINIX as a case study.
- "Modern Operating Systems" by Andrew S. Tanenbaum and Herbert Bos
- ISBN: 013359162X
- Covers both the principles and practice of modern operating systems design.
- "Operating System Concepts" by Abraham Silberschatz, Peter B. Galvin, and Greg Gagne
- ISBN: 1118063333
- Provides a comprehensive overview of operating system concepts and design.
- "The Design and Implementation of the FreeBSD Operating System" by Marshall Kirk McKusick et al.
- ISBN: 0321968972
- Offers an in-depth look at the design and implementation of the FreeBSD operating system.
Standards
- POSIX (IEEE 1003.1-2017)
- Defines the standard operating system interface and environment
- Single UNIX Specification
- Link
- Extends POSIX standards to include additional APIs for a standard Unix-like operating system
Online Courses
- MIT 6.828: Operating System Engineering
- Link
- CS 162: Operating Systems and Systems Programming at UC Berkeley
- Link
- Udacity: Introduction to Operating Systems
- Link
- edX: Computer Science 162, 001: Operating Systems and System Programming
- Link
- Coursera: Operating Systems and You: Becoming a Power User
- Link
Video Tutorials
- Operating Systems: Crash Course Computer Science
- Link
- Operating System Basics
- Link
- How to Make an Operating System
- Link
GitHub Repositories
- The Linux Kernel
- Link
- xv6, a simple Unix-like teaching operating system
- Link
- ToaruOS, a hobby operating system
- Link
Forums and Communities
- Operating Systems: Three Easy Pieces
- Link
- OS Dev Forums
- Link
- Reddit: r/osdev
- Link