OPERATING SYSTEM - NOTES
UNIT I: Introduction (7 hrs)
- Definition and purpose of OS
- Types: Batch, Multiprogramming, Multitasking, Distributed, Real-Time, Multiuser
- Functions: Process Management, Memory Management, File Management, I/O Management,
CPU Scheduling, etc.
- Concepts: Virtualization, Cloud Computing, System Boot, System Call, Shell
UNIT II: Process and Threads (10 hrs)
- Process States: New, Running, Waiting, Ready, Terminated
- PCB and Scheduling Queues: Job, Ready, Device Queues
- Scheduling: Short-Term, Medium-Term, Long-Term
- CPU Scheduling Algorithms: FCFS, SJF, Priority, RR, Multilevel
- Threads: User vs Kernel Threads, Thread Models: One-to-One, Many-to-One, Many-to-Many
UNIT III: Process Synchronization (8 hrs)
- Issues: Race Condition, Critical Section Problem
- Solutions: Peterson's Algorithm, Bakery Algorithm
- Tools: Mutex Lock, Semaphores (Binary, Counting)
- Classical Problems: Bounded Buffer, Readers-Writers, Dining Philosophers
- OS-level Synchronization: Windows, Linux
UNIT IV: Deadlock (10 hrs)
- Resource Allocation: Request, Use, Release
- Deadlock Conditions: Mutual Exclusion, Hold & Wait, No Preemption, Circular Wait
- Prevention: Eliminate one of the conditions
- Avoidance: Safe State, Banker's Algorithm
- Detection & Recovery: Wait-for Graph, Termination, Resource Preemption