📚 Operating Systems – Wikipedia Learning Roadmap
1. Foundations
- Operating system (overview, functions, history)
- Computer architecture (basics, CPU, memory hierarchy, I/O devices)
- System software vs. application software
- Kernel (operating system)
- Monolithic kernel, Microkernel, Hybrid kernel, Exokernel
- User space vs. Kernel space
- System call
2. Processes and Threads
- Process (computing)
- Thread (computing)
- Process control block
- Context switch
- Inter-process communication (IPC)
- Signals (computing)
- Pipes (Unix), Message queue, Shared memory
- Multitasking, Multiprocessing, Multithreading
- Scheduler (computing)
3. CPU Scheduling and Synchronization
- CPU scheduling
- Scheduling (computing)
- Preemption (computing)
- Scheduling algorithm (FCFS, SJF, Priority, Round-robin, Multilevel queue, etc.)
- Process synchronization
- Critical section
- Semaphore (programming)
- Mutex
- Monitor (synchronization)
- Deadlock (causes, prevention, detection, recovery)
- Dining philosophers problem, Readers–writers problem
4. Memory Management
- Memory management (operating systems)
- Virtual memory
- Paging
- Page table, Translation lookaside buffer (TLB)
- Page replacement algorithm (FIFO, LRU, Optimal, etc.)
- Segmentation (memory)
- Swapping (computing)
- Memory protection
- Garbage collection (computer science)
5. Storage and File Systems
- File system (concepts, operations, mounting)
- File descriptor
- File allocation table (FAT)
- NTFS, ext4, APFS, ZFS (examples of real FS)
- Inode
- Directory structure
- Disk scheduling (FCFS, SSTF, SCAN, C-SCAN, LOOK, etc.)
- RAID (storage redundancy)
- Journaling file system
- Input/output (overview)
- Device driver
- Direct memory access (DMA)
- Interrupt
- Spooling
7. Security and Protection
- Computer security (as applied to OS)
- Access control
- Access-control list (ACL)
- Capability-based security
- Privilege separation
- Sandbox (computer security)
- Operating system security
8. Distributed and Networked Systems
- Distributed operating system
- Cluster computing
- Network operating system
- Cloud computing (relation to OS-level virtualization)
- Remote procedure call (RPC)
9. Virtualization and Modern Extensions
- Virtualization
- Virtual machine
- Hypervisor (Type 1 vs Type 2)
- Containerization (e.g. Docker, Linux namespaces, cgroups)
- Paravirtualization
- OS-level virtualization
10. Advanced and Specialized Topics
- Real-time operating system (RTOS)
- Embedded operating system
- Mobile operating system
- Operating system service
- Fault tolerance
- High-availability cluster
- Microservices (as OS-adjacent concept)
11. Examples of Operating Systems
(Studying these helps ground theory in practice)
- Unix and Linux kernel
- BSD (FreeBSD, OpenBSD, NetBSD)
- macOS
- Microsoft Windows (architecture, NT kernel)
- Android (operating system)
- iOS
- Plan 9 from Bell Labs (research OS)
- MINIX