COMPUTER SCIENCE &
INFORMATION TECHNOLOGY
Operating
System
Comprehensive Theory
with Solved Examples and Practice Questions
Publications
www.madeeasypublications.org
Publications
MADE EASY Publications Pvt. Ltd.
Corporate Office: 44-A/4, Kalu Sarai (Near Hauz Khas Metro
Station), New Delhi-110016 | Ph. : 9021300500
Email : infomep@madeeasy.in | Web : www.madeeasypublications.org
First Edition : 2015
Operating System Second Edition : 2016
EDITIONS
Third Edition : 2017
© Copyright by MADE EASY Publications Pvt. Ltd.
Fourth Edition : 2018
All rights are reserved. No part of this publication may be
Fifth Edition : 2019
reproduced, stored in or introduced into a retrieval system,
Sixth Edition : 2020
or transmitted in any form or by any means (electronic,
Seventh Edition : 2021
mechanical, photo-copying, recording or otherwise),
Eighth Edition : 2022
without the prior written permission of the above mentioned
publisher of this book. Ninth Edition : 2023
MADE EASY Publications Pvt. Ltd. has taken due care
in collecting the data and providing the solutions, before
publishing this book. Inspite of this, if any inaccuracy or
printing error occurs then MADE EASY Publications Pvt.
Ltd. owes no responsibility. We will be grateful if you could
point out any such error. Your suggestions will be appreciated.
Operating System
CHAPTER 1 CHAPTER 4
Basic Concepts of Operating System.......... 3-16 Process Synchronization............................ 72-121
1.1 Operating System (OS)............................................................. 3 4.1 Synchronization........................................................................72
1.2 Structure of Computer System.............................................. 3
4.2 The Critical-Section Problem................................................74
1.3 Layered View of Operating System Services..................... 4
1.4 Types of Operating System..................................................... 4 4.3 Conditions to be Followed to Achieve
1.5 Dual Mode Operations............................................................. 8 Synchronization........................................................................75
1.6 Functions of Operating System............................................. 9 4.4 Requirements.............................................................................75
1.7 Operating System Components............................................ 9
4.5 Synchronization Techniques................................................76
1.8 System Call.................................................................................... 9
1.9 Interrupts.....................................................................................10 4.6 Two Process Solution (Software Solution).......................76
1.10 Booting of OS.............................................................................10 4.7 Multiple Process Solution (Software Solution)..............82
1.11 Kernel and its Types.................................................................11
4.8 Interrupt Disabling...................................................................83
Student Assignments................................................................13
4.9 Special Machine Instructions...............................................83
4.10 Semaphores................................................................................88
CHAPTER 2
4.11 Mutex............................................................................................93
Processes and Threads................................. 17-36
4.12 Classical Problems of Synchronization with
2.1 Process..........................................................................................17
Semaphore Solution................................................................98
2.2 Process State Models...............................................................19
2.3 Scheduling..................................................................................24 4.13 Programming Language Solution: Monitors............... 110
2.4 Thread...........................................................................................26 Student Assignments............................................................. 113
2.5 Process Image Vs Multi Thread Process Image..............29
2.6 Co-operating Processes (Inter Process
Communication).......................................................................30 CHAPTER 5
Student Assignments................................................................32
Concurrency and Deadlock.................... 122-159
5.1 Concurrency............................................................................ 122
CHAPTER 3
5.2 Precedence Graph................................................................. 124
CPU Scheduling .............................................37-71 5.3 The Fork and Join Constructs............................................ 126
3.1 Introduction...............................................................................37
5.4 Parbegin/Parend Concurrent Statement...................... 130
3.2 Goals of CPU Scheduling.......................................................37
5.5 Deadlock................................................................................... 135
3.3 Kinds of CPU Scheduling Algorithms................................38
3.4 Scheduling Algorithms...........................................................38 5.6 Concepts of Deadlock.......................................................... 139
Student Assignments................................................................63 Student Assignments............................................................. 151
iii
Operating System
CHAPTER 6 CHAPTER 8
Memory Management.............................. 160-205 File System................................................ 234-256
6.1 Introduction............................................................................ 160 8.1 Introduction............................................................................ 234
6.2 Logical (Virtual) Vs Physical Address Space.................. 164
8.2 Directories................................................................................ 235
6.3 Memory-Management Unit (MMU)................................ 165
8.3 File Management System................................................... 238
6.4 Memory Allocation Techniques........................................ 169
8.4 File System Organization.................................................... 239
6.5 Dynamic Allocation Algorithms....................................... 172
6.6 Internal Fragmentation and External 8.5 File Allocation Methods...................................................... 240
Fragmentation........................................................................ 173 8.6 Free Space Management.................................................... 247
6.7 Paging........................................................................................ 175
8.7 Tape............................................................................................ 251
6.8 Segmentation......................................................................... 192
Student Assignments............................................................. 253
6.9 Segmented Paging............................................................... 194
6.10 Buddy System......................................................................... 197
CHAPTER 9
Student Assignments............................................................. 199
Input/Output System................................ 257-273
CHAPTER 7 9.1 Introduction............................................................................ 257
Virtual Memory......................................... 206-233 9.2 Buffering and Caching......................................................... 258
7.1 Introduction............................................................................ 206
9.3 Magnetic Storage Devices.................................................. 258
7.2 Page Fault................................................................................. 207
9.4 Disk Scheduling..................................................................... 260
7.3 Page Replacement................................................................ 210
7.4 Page Replacement Algorithms......................................... 210 9.5 Disk Scheduling Algorithms.............................................. 261
7.5 Frame Allocation.................................................................... 223
9.6 Comparisons of Disk Scheduling Algorithms.............. 267
7.6 Dynamic Paging Algorithms............................................. 226
7.7 Advantages and Disadvantages of 9.7 Selection of a Disk Scheduling Algorithm.................... 267
Virtual Memory....................................................................... 227
Student Assignments............................................................. 271
Student Assignments............................................................. 228
iv