24CS204
Operating Systems
Course Category: Program Core (PC) Credits: 4
Course Type: Theory Lecture Tutorial Practice: 3 - 0 - 2
Prerequisites: Programming using ‘C’ Continuous Evaluation: 30
Semester end Evaluation: 70
Total Marks: 100
COURSE OUTCOMES BTL POI
Upon successful completion of the course, the student will be able to:
Understand the fundamental concepts of operating K2 1.7.1, 2.5.1, 2.5.2,
CO1 systems & structures 2.6.4, 2.7.1
Apply process management and CPU scheduling K3 1.7.1, 2.6.3, 2.6.4,
CO2 algorithms. 2.8.3, 2.8.4
Analyze process synchronization mechanisms and K4 1.7.1, 2.5.2, 2.6.3,
CO3 examine deadlock handling techniques 2.6.4, 2.8.4, 3.7.1
Apply memory management strategies, including K3 1.7.1, 2.5.2, 2.6.3,
CO4 paging and virtual memory techniques, 2.6.4, 2.8.4, 3.7.1
Analyze file system concepts, storage management K4 1.7.1, 2.5.2, 2.6.3,
CO5 techniques and protection mechanisms 2.6.4, 2.8.4, 3.7.1
Contribution of Course Outcomes towards achievement of Program
Outcomes (1 – Low, 2 - Medium, 3 – High)
PO PO PO PO PO PO PO PO PO PO PO PO PSO PSO
1 2 3 4 5 6 7 8 9 10 11 12 1 2
CO1 3 2 1
CO2 2 2 3 2 1
CO3 2 2 3 2 2
CO4 2 2 3 2 2
CO5 2 3 3
Course Content
UNIT-I: Introduction and Operating System Structures
Introduction: Operating Systems, Computer-System Organization, Computer-System
Architecture, Operating-System Operations, Distributed Systems, Free and Open-Source
Operating Systems.
Operating-System Structures: Operating-System Services, User and Operating-System
Interface, System Calls, System Services, Operating-System Design and Implementation,
Operating-System Structure
Unit-II: Process Management & Scheduling
Processes and Threads: Process Concept, Process Scheduling, Operations on Processes,
Interprocess Communication, IPC in Shared-Memory Systems, IPC in Message-Passing
Systems, Threads Overview, Multithreading Models.
CPU Scheduling: Basic Concepts, Scheduling Criteria, Scheduling Algorithms (FCFS,
SJF, RR, Priority, Multilevel Queue, Multilevel Feedback Queue), Multi-Processor
Scheduling, Real-Time Scheduling
UNIT – III: Process Synchronization & Deadlocks
Synchronization Tools: Background, The Critical-Section Problem, Peterson’s Solution,
Hardware Support for Synchronization, Mutex Locks, Semaphores, Monitors, Classic
Problems of Synchronization.
Deadlocks: System Model, Deadlock Characterization, Methods for Handling Deadlocks,
Deadlock Prevention, Deadlock Avoidance, Deadlock Detection, Recovery from
Deadlock.
UNIT – IV: Memory Management
Main Memory: Background, Contiguous Memory Allocation, Paging, Structure of the
Page Table, Swapping.
Virtual Memory: Background, Demand Paging, Copy-on-Write, Page Replacement,
Allocation of Frames, Thrashing.
UNIT – V: Storage Management and File System
Mass-Storage Structure: Overview of Mass-Storage Structure, HDD Scheduling (FCFS,
SCAN, C-SCAN)
File System Interface: File concept, Access methods, Directory Structure;
File system Implementation: File-system structure, File-system Operations, Directory
implementation, Allocation method, Free space management;
Protection: Goals of protection, Principles of protection, Protection Rings, Domain of
protection, Access matrix.
Text Books:
[1]. Operating System Concepts, Silberschatz A, Galvin P B, Gagne G, 10th Edition, Wiley,
2018.
[2]. Modern Operating Systems, Tanenbaum A S, 4th Edition, Pearson, 2016
Reference Books:
[1]. Operating Systems -Internals and Design Principles, Stallings W, 9th edition, Pearson,
2018
[2]. Operating Systems: A Concept Based Approach, D.M Dhamdhere, 3 rd Edition,
McGraw- Hill, 2013
Online Learning Resources:
1. https://nptel.ac.in/courses/106/106/106106144/
2. http://peterindia.net/OperatingSystems.html
.
E-RESOURCES AND OTHER DIGITAL MATERIAL
[1] Prof Santanu Chattopadhyay - NPTEL Course on Operating Systems @
https://nptel.ac.in/courses/106/105/106105214/ Available from 28-10-24
[2] Stanford University - Lecture Notes on Operating Systems @
https://www.scs.stanford.edu/21wi-cs140/notes/ Available on 28-10-24
[3] IIT Bombay – Lecture Notes on Operating Systems @
https://www.cse.iitb.ac.in/~mythili/os/ Available on 28-10-24