index

00 Readme

Operating System Study Guide

This directory contains organized notes on Operating System concepts, following a logical learning progression.

Learning Path

Study these notes in order for the best learning experience:

1. Fundamentals

Topics: OS definition, architecture, protection modes, system calls, OS services

2. Processes and Threads

Topics: Process lifecycle, PCB, context switching, threading models

3. Synchronization

Topics: Mutexes, condition variables, deadlocks, synchronization primitives

4. CPU Scheduling

Topics: Scheduling algorithms, fairness, real-time scheduling

5. Memory Management

Topics: Virtual memory, paging, segmentation, page tables

6. Inter-Process Communication

Topics: IPC mechanisms, shared memory, message passing

7. I/O and Filesystems

Topics: Device drivers, disk I/O, filesystem structure


Quick Reference

Key Concepts by Topic

Process Management: PCB, context switching, fork, exec Thread Management: pthread, mutex, condition variables Scheduling: timeslice, priority, fairness, vruntime Memory: virtual address, page table, TLB, page fault IPC: shared memory, message passing, sockets I/O: device driver, interrupt, DMA, VFS

Common Patterns


Study Tips

  1. Start with fundamentals: Understand OS architecture and protection modes before diving into specific mechanisms
  2. Follow dependencies: Processes → Threads → Synchronization → Scheduling
  3. Connect concepts: Notice how scheduling relates to context switching, how IPC relates to synchronization
  4. Think about trade-offs: Every design decision has pros and cons
  5. Practice with examples: Work through scheduling algorithms, page table calculations, etc.

Last updated: 2026-02-01