Skip to main content

Operating Systems Resources

Online Courses

  • Type: [Link]

  • Title: Operating Systems and System Programming by UC Berkeley (CS162)

  • Link: https://cs162.org/

  • Description: A renowned course that delves into the design and implementation of operating systems, including process management, synchronization, and file systems.

  • Type: [Link]

  • Title: Operating Systems and You: Becoming a Power User by Google on Coursera

  • Link: https://www.coursera.org/learn/os-power-user

  • Description: A beginner-friendly course that introduces how operating systems work and how to manage them effectively.

Books

  • Type: [Book]

  • Title: "Operating Systems: Three Easy Pieces" by Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau

  • Link: https://pages.cs.wisc.edu/~remzi/OSTEP/

  • Description: A highly accessible and free textbook that introduces key concepts in operating systems, such as virtualization, concurrency, and persistence, with engaging explanations and practical examples.

  • Type: [Book]

  • Title: "The Little Book of Semaphores" by Allen B. Downey

  • Link: https://greenteapress.com/semaphores/LittleBookOfSemaphores.pdf

  • Description: A free book focused on synchronization principles in operating systems, providing step-by-step explanations and practical examples to understand semaphores and concurrency control.

YouTube Videos

Libraries and Tools

  • Type: [Link]

  • Title: Linux Kernel Development

  • Link: https://kernel.org/

  • Description: The official website for the Linux kernel, offering the source code and tools for understanding and contributing to one of the most popular open-source operating systems.

  • Type: [Link]

  • Title: Minix Operating System

  • Link: http://www.minix3.org/

  • Description: A lightweight, UNIX-like operating system designed for educational purposes, providing insights into operating system design and implementation.

  • Type: [Link]

  • Title: VirtualBox

  • Link: https://www.virtualbox.org/

  • Description: A powerful x86 and AMD64/Intel64 virtualization software for running multiple operating systems simultaneously on a single machine.