CS3451
INTRODUCTION
TO OPERATING SYSTEMS
COURSE
OBJECTIVES:
• To understand the basics and functions
of operating systems.
• To understand processes and threads
• To analyze scheduling algorithms and
process synchronization.
• To understand the concept of deadlocks.
• To analyze various memory management
schemes.
• To be familiar with I/O management and
file systems.
• To be familiar with the basics of
virtual machines and Mobile OS like iOS and Android.
UNIT
I INTRODUCTION
Computer
System - Elements and organization; Operating System Overview - Objectives and
Functions - Evolution of Operating System; Operating System Structures –
Operating System Services - User Operating System Interface - System Calls –
System Programs - Design and Implementation - Structuring methods.
UNIT
II PROCESS MANAGEMENT
Processes
- Process Concept - Process Scheduling - Operations on Processes -
Inter-process Communication; CPU Scheduling - Scheduling criteria - Scheduling
algorithms: Threads - Multithread Models – Threading issues; Process Synchronization
- The Critical-Section problem - Synchronization hardware – Semaphores – Mutex
- Classical problems of synchronization - Monitors; Deadlock - Methods for
handling deadlocks, Deadlock prevention, Deadlock avoidance, Deadlock
detection, Recovery from deadlock.
UNIT
III MEMORY MANAGEMENT
Main
Memory - Swapping - Contiguous Memory Allocation – Paging - Structure of the
Page Table - Segmentation, Segmentation with paging; Virtual Memory - Demand
Paging – Copy on Write - Page Replacement - Allocation of Frames –Thrashing.
UNIT
IV STORAGE MANAGEMENT
Mass
Storage system – Disk Structure - Disk Scheduling and Management; File-System
Interface - File concept - Access methods - Directory Structure - Directory
organization - File system mounting - File
Sharing and Protection; File System Implementation - File System Structure -
Directory implementation - Allocation Methods - Free Space Management; I/O
Systems – I/O Hardware, Application I/O interface, Kernel I/O subsystem.
UNIT
V VIRTUAL MACHINES AND MOBILE OS
Virtual
Machines – History, Benefits and Features, Building Blocks, Types of Virtual
Machines and their Implementations, Virtualization and Operating-System
Components; Mobile OS - iOS and Android.
COURSE
OUTCOMES:
At
the end of this course, the students will be able to:
CO1
: Analyze various scheduling algorithms and process synchronization.
CO2
: Explain deadlock prevention and avoidance algorithms.
CO3
: Compare and contrast various memory management schemes.
CO4
: Explain the functionality of file systems, I/O systems, and Virtualization
CO5
: Compare iOS and Android Operating Systems.
TEXT
BOOKS:
1. Abraham Silberschatz, Peter Baer Galvin
and Greg Gagne, “Operating System Concepts”‖, 10th Edition, John Wiley and Sons
Inc., 2018.
2. Andrew S Tanenbaum, "Modern
Operating Systems", Pearson, 5th Edition, 2022 New Delhi.
REFERENCES:
1. Ramaz Elmasri, A. Gil Carrick, David
Levine, “ Operating Systems – A Spiral Approach”, Tata McGraw Hill Edition,
2010.
2. William Stallings, "Operating
Systems: Internals and Design Principles", 7th
Edition, Prentice Hall, 2018.
3. Achyut S.Godbole, Atul Kahate, “Operating
Systems”, McGraw Hill Education, 2016.