Process
Definition, lifecycle (new, ready, running, waiting, terminated)
Context switching
Threads
Benefits of multithreading
Models: One-to-One, Many-to-One, Many-to-Many
User vs Kernel threads
Schedulers
Short-term, long-term, medium-term
Algorithms
FCFS (First Come First Serve)
SJF (Shortest Job First)
Round Robin
Priority Scheduling
Metrics
Waiting Time
Turnaround Time
Efficiency (CPU utilization, throughput)
Critical Section Problem
Requirements: Mutual Exclusion, Progress, Bounded Waiting
Solutions
Peterson’s Algorithm
Semaphores & Mutexes
Race Conditions
Definition and consequences
Conditions
Mutual Exclusion, Hold & Wait, No Preemption, Circular Wait
Handling
Prevention
Avoidance (e.g., Banker’s Algorithm)
Detection & Recovery
Tools
Resource Allocation Graphs
Safe vs Unsafe states
Concepts
Logical vs Physical Addresses
Address Binding
Memory Management Unit (MMU)
Techniques
Swapping
Paging
Segmentation
Page Tables
Hierarchical, hashed, inverted
Intel & ARM examples
System Calls
Types: Process control, file management, device management, inter-process communication
Interfaces
CLI, GUI, touchscreen
Services
Resource Management, Error Handling, Protection/Security
Startup
Bootstrapping
Kernel roles