AlgoPlusAlgoPlus
← All modules

Operating Systems

From processes and scheduling to memory, deadlock, files, and Linux. · 20 topics

Foundations
Operating System Basics
What an OS is: kernel, the user/kernel boundary, history.
Types of OS
Batch, time-sharing, real-time, multiprogramming, distributed.
System Calls & Services
User → kernel trap; OS services and system programs.
Virtual Machines
The virtual-machine abstraction and hypervisors.
Processes & CPU Scheduling
Process vs Thread
Process concept, the PCB, and threads of execution.
Process States
New → Ready → Running → Waiting → Terminated.
CPU Scheduling
FCFS, SJF, Round-Robin on a Gantt chart.
Synchronization & Deadlock
Mutex / Semaphore
Threads queue on the critical section.
Classical Sync Problems
Producer-consumer, readers-writers, dining philosophers.
Deadlock
A cycle in the resource-allocation graph.
Banker's Algorithm
Deadlock avoidance via safe sequences.
Memory & Virtual Memory
Memory Paging
Virtual → physical translation and page faults.
Allocation & Fragmentation
Contiguous allocation; internal vs external fragmentation.
Segmentation
Segment tables and logical address spaces.
Page Replacement
FIFO, LRU, Optimal, Clock; frames and faults.
File Systems & Disk
File Allocation
Contiguous, linked, and indexed allocation.
Directory & Free Space
Directory structures and free-space management.
Disk Scheduling
FCFS, SSTF, SCAN, C-SCAN, LOOK seek paths.
Linux
Linux Basics
History, architecture, the shell, and file structure.
Linux Commands
Essential commands and the filesystem hierarchy.