Operating Systems
0%
Course Title: Operating Systems
Course No: CMP 381
Nature of the Course: Theory + Lab
Semester: 5
Full Marks: 50 + 30 + 20
Pass Marks: 24 + 13 + 8
Credit Hours: 3
Course Description
Course Objectives
Course Contents
1.3. Types of Operating Systems
- Batch, Time-Sharing, Personal Computer, Parallel, Real-Time, Distributed Systems
1.4. Operating System services
- System calls, Shell commands, Shell programming
1.5. Operating System Structure
- Monolithic System, Layered, Virtual Machines, Client-Server
2.1. Processes
- Definition, states diagram, PCB, Context switching
- Operations on Processes, Cooperating Processes, IPC
2.2. Threads
- Overview, Benefits, User/Kernel Threads, Multithreading Models
2.3. Process Synchronization
- Concurrent process, Critical region, Race condition
- Mutual exclusion algorithms: Locks, TSL, Peterson’s
- Semaphore, Monitor, Process Synchronization
- Classical problems: Readers-Writers, Producer-Consumer
- Sleeping Barber, Dining Philosopher Problems
2.4. Processor Scheduling
- Concepts, Scheduling Criteria, Scheduler Types
- Algorithms: FCFS, SJF, SRTF, RR, Priority, HRN, Multi-level
3.1. Deadlock Concepts and Modeling
- System Model, Resources, Resource Allocation Graph
3.2. Deadlock Handling
- Prevention, Avoidance, Ostrich Algorithm, Banker’s Algorithm
- Deadlock Detection and Recovery
4.1. Memory: Concepts and its hierarchy
- Address: Logical and Physical, Swapping, Free Space Management
- Allocation: Contiguous, Paging, Segmentation
4.2. Virtual Memory
- Concept, Demand Paging, Thrashing
- Page Replacement: FIFO, LRU, Second Chance, Clock, Optimal
5.1. Introduction, I/O Techniques
- Programmed I/O, Interrupt-driven I/O, DMA
- I/O Software: Goals, Polled vs Interrupt Driven, UI, Drivers
5.2. Disk Scheduling
- Algorithms: FCFS, SSTF, Scan, C-Scan, Look, C-Look
6.1. File Concepts
- Descriptor, Naming, Structure, Types, Attributes, Access
6.2. Directories Management
- Single-level, Hierarchical Systems, Directory operations
7.1. Introduction to Distributed Systems
- Characteristics, Advantages, Challenges, Design Goals, Types
7.2. Process Management in Distributed Systems
- Migration, Communication, RPC, Message Passing, Scheduling
7.3. Resource and File Management
- Sharing, Allocation, DFS Concepts, Architecture, Naming
7.4. Synchronization and Deadlock
- Clock Sync, Distributed Mutual Exclusion, Deadlock Detection
7.5. Fault Tolerance and Recovery Mechanisms
- Two-Phase Commit, Security Issues
8.1. Linux
- Design Principles, IPC, Security, Process/File Management
8.2. Windows
- Design principles, Programmer interface, System components
Laboratory Works
Text Books
- 1.Silberschatz A, G. P., & Gagne, G. Operating System Concepts. New York: John Wiley and Sons.
Reference Books
- 1.Tanenbaum, A. S. Modern Operating Systems. New Delhi: Prentice Hall of India.
- 2.William, S. Operating Systems. Delhi: Pearson Education.