Computer Applications 2022
OPERATING SYSTEMS
Course Code: 22CA3104 LTPC
3 0 0 3
COURSE OUTCOMES:
At the end of the course, the student will be able to
CO1: Understand functional architecture of an operating system.(L2)
CO2: Compare CPU scheduling algorithms.(L2)
CO3: Analyze process coordination.(L2)
CO4: Make use of File System and directory implementations.(L3)
CO5: Explain different program and network threats to the system.(L2)
UNIT-I (10 Lectures)
INTRODUCTION AND SYSTEM STRUCTURE
Introduction: What Operating System Do, computer system organization, computer system
architecture, operating system structure: Distributed systems, special purpose systems, Computing
environments, operating system services, system calls and its types, operating systems generation.
Learning Outcomes:
At the end of the module, students will be able to
List Operating system services. (L2)
Understand the concept of system calls. (L2)
Explain various Computing systems(L2)
UNIT-II (10 Lectures)
PROCESS MANAGEMENT
Process Concept: Process, Process Control Blocks, Operations on Processes, Inter process
Communication.
Multithreaded Programming: Multithreading Models, Thread Libraries, Threading Issues
Process Scheduling: Scheduling Criteria, scheduling algorithms (FCFS, SJF, Round Robin, and
Priority) and their evaluation, Multiprocessor scheduling. Case Study: Linux.
Learning Outcomes:
At the end of the module, students will be able to
Explain Process concepts and Identify the operations on process (L2)
Define Inter Process Communication (L1)
Illustrate Multithreading (L2)
Explain Scheduling Algorithms (L2)
UNIT-III (10 Lectures)
PROCESS COORDINATION
Synchronization: The Critical- section problem, Peterson’s Solution, Synchronization Hardware,
semaphores, classic problems of synchronization, monitors, Synchronization examples, atomic
transactions. Case Study: Linux
Deadlocks: System model, deadlock characterization, Methods for Handling Deadlock, deadlock
prevention, detection and Avoidance, recovery from deadlock.
Computer Applications 2022
Learning Outcomes:
At the end of the module, students will be able to
Explain the synchronization problems(L2)
Outline and understand the problems of Deadlocks(L2)
Summarize the methods of handling deadlocks(L2)
UNIT-IV (10 Lectures)
Memory management strategies: Swapping, Contiguous memory allocation, Paging, Structure of the
page table, Segmentation.
Virtual-memory management: Demand paging, Copy on write, page-Replacement algorithms
(FIFO, LRU, LFU, Optimal Page Replacement)
File systems and implementation: File Concept, Access Methods, Directory Structure, File System
Mounting. File system structure, File System Implementation, Directory Implementation, Allocation
Methods, Free-space Management
Learning Outcomes:
At the end of the module, students will be able to
Explain the memory management strategies (L2)
Illustrate paging and segmentation(L2)
List the File concepts and directory structure(L1)
Apply Virtual memory(L3)
UNIT-V (10 Lectures)
STORAGE MANAGEMENT
Secondary-storage structure: Overview of Mass-storage structure, disk structure, disk attachment,
disk scheduling, swap-space management.
PROTECTION AND SECURITY
Goals and Principles of Protection, Domain of protection, Access Matrix, Implementation of
Access Matrix, Access control, Revocation of Access Rights, The Security problem, program
threats, system and network threats
Learning Outcomes:
At the end of the module, students will be able to
Outline disk scheduling concepts(L2)
Define Protection and Security(L1)
Explain Program, System & Network threats (L2)
TEXT BOOK:
Abraham Silberschatz, Peter B. Galvin, Greg Gagne,Operating System Principles, 8thEdition, John
Wiley &Sons.
REFERENCES:
1. William Stallings, “Operating Systems – Internal and Design Principles”, 6thEdition, Pearson
education/PHI, 2011.
2. D.M. Dhamdhere, “Operating systems - A Concept based Approach”, 2ndEdition, TMH, 2010.
3. Charles Crowley, “Operating Systems - A Design Approach”, 1st Edition, TMH.
4. Andrew S Tanenbaum, “Modern Operating Systems”, 3rd Edition, Pearson, 2010.
Computer Applications 2022
WEB REFERENCES:
https://www.cse.iitb.ac.in/~mythili/os/
https://applied-programming.github.io/Operating-Systems-Notes/