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.