II Year B. Tech CSE ‐ I Sem L T/P/D C
3 -/-/- 3
(R18A0504) OPERATING SYSTEMS
OBJECTIVES:
To learn the fundamentals of Operating Systems.
To learn the mechanisms of OS to handle processes and threads and their communication
To learn the mechanisms involved in memory management in contemporary OS
To gain knowledge on distributed operating system concepts that includes architecture,
Mutual exclusion algorithms, deadlock detection algorithms and agreement protocols
To know the components and management aspects of concurrency management
UNIT-I
Introduction: Concept of Operating Systems, Generations of Operating systems, Types of
Operating Systems, OS Services, System Calls, Structure of an OS - Layered, Monolithic,
Microkernel Operating Systems, Concept of Virtual Machine. Case study on UNIX and
WINDOWS Operating System.
Processes: Definition, Process Relationship, Different states of a Process, Process State
transitions, Process Control Block (PCB), Context switching
Thread: Definition, Various states, Benefits of threads, Types of threads, Concept of
Multithreads.
UNIT-II
Process Scheduling: Foundation and Scheduling objectives, Types of Schedulers, Scheduling
criteria: CPU utilization, Throughput, Turnaround Time, Waiting Time, Response Time;
Scheduling algorithms: Pre-emptive and Non pre-emptive, FCFS, SJF, RR; Multiprocessor
scheduling: Real Time scheduling: RM and EDF.
Inter-process Communication: Critical Section, Race Conditions, Mutual Exclusion,Hardware
Solution, Strict Alternation, Peterson’s Solution, The Producer/Consumer Problem, Semaphores,
Event Counters, Monitors, Message Passing, Classical IPC Problems: Reader’s & Writer
Problem, Dinning Philosopher Problem etc.
UNIT-III
Memory Management: Basic concept, Logical and Physical address map, Memory allocation:
Contiguous Memory allocation – Fixed and variable partition–Internal and External
fragmentation and Compaction; Paging: Principle of operation – Page allocation – Hardware
support for paging, protection and sharing, Disadvantages of paging.
Virtual Memory: Basics of Virtual Memory – Hardware and control structures – Locality of
reference, Page fault , Working Set , Dirty page/Dirty bit – Demand paging, Page Replacement
algorithms: Optimal, First in First Out (FIFO), Second Chance (SC), Not recently used (NRU)
and Least Recently used (LRU).
,UNIT-IV
File Management: Concept of File, Access methods, File types, File operation, Directory
structure, File System structure, Allocation methods (contiguous, linked, indexed), Free-space
management (bit vector, linked list, grouping), directory implementation (linear list, hash table),
efficiency and performance.
I/O Hardware: I/O devices, Device controllers, Direct memory access Principles of I/O
Software: Goals of Interrupt handlers, Device drivers, Device independent I/O software.
UNIT-V
Deadlocks: Definition, Necessary and sufficient conditions for Deadlock, Deadlock Prevention,
Deadlock Avoidance: Banker’s algorithm, Deadlock detection and Recovery.
Disk Management: Disk structure, Disk scheduling - FCFS, SSTF, SCAN, C-SCAN, Disk
reliability, Disk formatting, Boot-block, Bad blocks.
TEXT BOOKS:
1. Operating System Concepts Essentials, 9th Edition by AviSilberschatz, Peter
Galvin,Greg Gagne, Wiley Asia Student Edition.
2. Operating Systems: Internals and Design Principles, 5th Edition, William
Stallings,Prentice Hall of India.
REFERENCE BOOKS:
1. Operating System: A Design-oriented Approach, 1st Edition by Charles Crowley,
Irwin Publishing
2. Operating Systems: A Modern Perspective, 2nd Edition by Gary J. Nutt, Addison-
Wesley
3. Design of the Unix Operating Systems, 8th Edition by Maurice Bach, Prentice-Hallof
India
4. Understanding the Linux Kernel, 3rd Edition, Daniel P. Bovet, Marco Cesati, O'Reilly
and Associates
OUTCOMES:
At the end of the course the students are able to:
Create processes and threads.
Develop algorithms for process scheduling for a given specification of CPU
utilization, Throughput, Turnaround Time, Waiting Time, Response Time.
For a given specification of memory organization develop the techniques for optimally
allocating memory to processes by increasing memory utilization and for improving
the access time.
Design and implement file management system.
For a given I/O devices and OS (specify) develop the I/O management functions in OS
as part of a uniform device abstraction by performing operations for synchronization
between CPU and I/O controllers.
, INDEX
UNIT
TOPIC PAGE NO
NO
Introduction
Operating System concepts 1-11
Types of Operating Systems 11-18
I
Operating services, System Calls 18-25
Structure of OS, Virtual machines 26-31
Process Concepts 32-34
Thread Concepts 34-38
Process Scheduling
Process Scheduling concepts 39-40
Pre-emptive and Non pre-emptive scheduling
41-48
algorithms
II Multiprocessor scheduling 48-49
Real time scheduling 49-52
Inter-process Communication
Critical Section problem 52-57
Classical IPC Problems 57-65
Memory Management 66-82
III
Virtual Memory 82-89
File System Management 90-105
IV
I/O Hardware 105-110
Deadlocks 111-119
V
Mass Storage Structure 120-129
, OPERATING SYSTEMS NOTES II YEAR/I SEM MRCET
UNIT-I
Operating System Introduction: Operating Systems Objectives and functions, Computer System
Architecture, OS Structure, OS Operations, Evolution of Operating Systems - Simple Batch, Multi
programmed, time shared, Personal Computer, Parallel, Distributed Systems, Real-Time Systems, Special -
Purpose Systems, Operating System services, user OS Interface, System Calls, Types of System Calls,
System Programs, Operating System Design and Implementation, OS Structure, Virtual machines
1