COURSEPACK Operating System Integrated-NEW (1)
COURSEPACK Operating System Integrated-NEW (1)
SCHEME
The scheme is an overview of work-integrated learning opportunities and gets students out into the
real world. This will give what a course entails.
Self-study
delivery
Practical
Practical 1 2
Tutorial
Theory
Self-study 0 0
Total 4 5 45 00 30
0 50% 50
0 %
Course Dr. Deepak Kumar Panda Course Dr. Ashok Kumar Rai.
Lead Coordinator
Name Theory Practical
Course
Instructors Dr. Deepak Kumar Panda Dr. Deepak Kumar Panda
Ms. Shailja Ms. Shailja
Dr. Krishana-veer Singh Dr. Krishana-veer Singh
Dr. Amit Kumar (496) Dr. Amit Kumar (496)
Dr. Ashok Kumar Ray Dr. Ashok Kumar Ray
Dr. Upasana Dohare Dr. Upasana Dohare
Dr. Monika Jain Dr. Monika Jain
Dr. Varsha Kumari Singh Dr. Varsha Kumari Singh
Dr. Dhirendra Pratap Singh Dr. Dhirendra Pratap Singh
Dr. Kavita Saini Dr. Kavita Saini
Ms. Ashima Tyagi Ms. Ashima Tyagi
Ms. Kritika Sharma. Ms. Kritika Sharma.
Ms. Alisha Banga Ms. Alisha Banga
Mr. Anshuman Mr. Anshuman
This course will introduce the basic concepts involved in the design of an operating system. Students
will be made familiar to the different types of OS and its important modules like threads, process,
deadlock, memory management, file systems, synchronization primitives and exception handling.
The accompanying lab course is intended to give students an illustration of the concepts introduced
in the theory course.
PREREQUISITE COURSE
PREREQUISITE COURSE No
REQUIRED
If, yes please fill in the Details Prerequisite course code Prerequisite course name
COURSE OBJECTIVE
1. To provide the fundamental principle of operating systems and explores design aspects of
operating systems.
2. To understand the concepts of threads and process.
3. To understand how processes are synchronized and scheduled.
4. To understand what is deadlock and how to handle it if it occurs in system.
5. To understand different approaches to memory management.
6. To understand the structure and organization of the file system.
PO2
PO3
PO4
PO5
PO6
PO7
PO8
PO9
PO10
PO11
PO12
PSO1
PSO2
COs/ POs
R1UC301B.1 3 - - - - - - - - - 2 - - -
R1UC301B.2 3 - - 2 - 2 - - - - 2 - - -
R1UC301B.3 3 2 2 - 2 - - - - 2 - - -
R1UC301B.4 3 - - 2 - 2 - - - - 2 - - -
Note: 1-Low, 2-Medium, 3-High
COURSE ASSESSMENT
The course assessment patterns are the assessment tools used both in formative and summative
examinations.
COURSE CONTENT
THEORY
Introduction: Operating System and Function, Evolution of Operating System, System Software,
OS services and Components: Multitasking, Multiprogramming, Multiprocessing, Time Sharing,
Buffering, Spooling, Distributed OS.
Process Management: Concept of process and threads: Process states, Process management,
Critical Section, Problem, Semaphores, Classical Problems in Concurrency, Inter Processes
Communication, Process Generation,
Process Management: Process concepts: Process status, Process description, Performance Criteria,
Process Scheduling: Concepts, Scheduler organization, preemptive and non- preemptive scheduler
strategies, scheduling algorithms: FCFS, SJF, Priority Scheduling, Round Robin Scheduling,
Multiple Processor scheduling, Thread Concepts and Multiple threaded OS.
I/O Management and Disk Management: I/O Devices and the Organization of I/O Function, I/O
Buffering, Disk I/O. Disk management: Disk Structure and Scheduling. File systems, and
operating system support for distributed systems. Protection and Security related issues. Case
studies of contemporary operating systems.
PRACTICAL
LIST OF EXPERIMENTS
1. Study of basic Commands in Linux Operating System
2. Shell programming using control statements
3. Shell programming using loops, patterns, expansions and substitutions
4. Write a Shell program to check the given number is even or odd.
5. Write a Shell program to swap the two integers.
6. Write a Shell program to find the factorial of a number.
7. Write programs using the fork, exec, getpid, exit system calls.
8. Write programs using the I/O system calls (open, read, write,wait,close etc).
9. Simulation of Linux commands (ls, grep etc.)
10. Writing programs to use inter process communication constructs (File sockets/ Shared memory)
11. Write program for thread creation and termination
12. Implementation of FCFS Scheduling Algorithms.
13. Implementation of SJF Scheduling Algorithms.
14. Implementation of RR Scheduling Algorithms.
15. Implementation of FIFO Page Replacement Algorithms.
16. Implementation of First Fit memory allocation algorithms.
17. Implementation of Best Fit memory allocation algorithms
17 Scheduling Concept
18 CPU scheduling
19 Performance Criteria of Understand and implement
Scheduling Algorithm the operation in operating Students
20 scheduling algorithms system using scheduling can able to
Without deadlock. schedule
21 Preemptive scheduling
multiple
algorithms
process at
22 Non- preemptive scheduling
same time
algorithms
without
23 Multiprocessor Scheduling any
24 Deadlock: System Model deadlock.
25 Deadlock Characterization
26 Prevention, Avoidance and
Detection
27 Deadlock detection algorithm
28 Memory partitioning understand and implement Students
29 Swapping, Paging the concept of memory can able to
30 Segmentation Virtual management, paging and allocate
memory: Overlays segmentation memory
31 Demand paging for
32 Performance of Demand understand and implement different
paging the concept of page process
33 Virtual memory concepts replacement algorithm using
allocation
34 Page replacement algorithms
algorithms.
35 Allocation algorithms
36 Example OS : Linux
37 I/O Devices and The
Organization of I/O Function understand and analyses Students
38 I/O Buffering, Disk I/O, the concept of Disk I/O, can able to
39 Operating System Design file organization organized
Issues files in
40 File System: File Concept directories.
41 File Organization and Access
Mechanism
42 File Directories
43 File Protection
44 File Sharing
45 Implementation Issues
26 Implement the The students will study The students will learn The student will
Producer – Consumer semaphore algorithm. semaphore algorithm. able to
problem using implement
semaphores. problem using
semaphore.
BIBLIOGRAPHY
Text Books:
1. Abraham Silberschatz, Peter Baer Galvin and Greg Gagne, “Operating System Concepts”,
9th Edition, John Wiley and Sons Inc., 2012.
Reference Books:
1. William Stallings, “Operating Systems – Internals and Design Principles”, 7th Edition,
Prentice Hall, 2011.
2. Andrew S. Tanenbaum, “Modern Operating Systems”, Second Edition, Addison Wesley,
2001.
3. Charles Crowley, “Operating Systems: A Design-Oriented Approach”, Tata McGraw
HillEducation”, 1996.
4. D M Dhamdhere, “Operating Systems: A Concept-Based Approach”, Second Edition,
TataMcGraw-Hill Education, 2007. 5.
List of NPTEL/MOOCS/SWAYAM/Courses/Video
1. Coursera - https://www.coursera.org/learn/os-power-user
2. http://nptel.ac.in/
3. Udemy - https://www.udemy.com/courses/it-and-software/operating-systems/
4. Udacity: https://eu.udacity.com/course/introduction-to-operating-systems--ud923
Webliography:
1. https://www.tutorialspoint.com/operating_system/index.htm
2. https://www.javatpoint.com/operating-system.
3. https://www.studytonight.com/operating-system/
PROBLEM-BASED LEARNING
S. Problem KL
No.
1 Explain FCFS scheduling algorithm. Find the average turnaround time and K1
average waiting time for the processes given below. Process CPU burst time (in
ms)
Process Burst Time
P1 24
P2 3
P3 3
2 Find the average turnaround time and average waiting time for the processes K2
given in the table below using SJF Non preemptive algorithm. Process CPU burst
time (in ms)
5 Consider the following set of processes that arrive at time 0, with the K2
length of the CPU burst given in milliseconds. If time quantum is 4ms
then draw the Gantt chat and find the average waiting time, average
turnaround time using Round Robin Scheduling Algorithm.
Process BurstTime
P1 24
P2 3
P3 3
6 For the following set of process find the average waiting time using Gantt chart K2
for
i> SJF Scheduling.
ii> Priority scheduling
process Burst time Priority
p1 5 5
p2 3 4
p3 8 3
p4 2 1
p5 1 2
The process has arrived in the order p2, p1, p4, p3 and p5.
7 For the following set of processes, find the average waiting K2
time & average turnaround time using GANTT Chart for
I > FCFS
II> SJF preemptive.
III> SJF non-preemptive.
Process Arrival time (in sec) Burst Time
P1 0 4
P2 1 2
P3 2 5
P4 3 4
8 Consider the FCFSand RR (quantum = 10 milliseconds) scheduling K3
algorithms for this set of processes. Which algorithm would give the
minimum average waiting time?
Proces Burst
s Time
P1 10
P2 29
P3 3
P4 7
P5 12
9 Suppose that the following processes arrive for execution at the K2
times indicated. Each process will run for the amount of time
listed. In answering the questions, use non -preemptive
scheduling, and base all decisions on the information you have at
the time the decision must be made.
-
Proces Arrival Time Burst
s Time
P1 0.0 8
P2 0.4 4
P3 1.0 1
a) What is the average turnaround time for these processes with the
FCFS scheduling algorithm?
b) What is the average turnaround time for these processes with the SJF
scheduling algorithm?
10 Consider the following set of processes, with the length of the CPU K2
burst given in milliseconds:
The processes are assumed to have arrived in the order P1, P2, P3,
P4, P5, all at time 0.
Draw four Gantt charts that illustrate the execution of these
processes using the following scheduling algorithms: FCFS, SJF,
non-preemptive priority (a larger priority number implies a higher
priority), and RR (quantum = 2).
What is the turnaround time of each process for each of the
scheduling algorithms in part a?
What is the waiting time of each process for each of these
scheduling algorithms?
Which of the algorithms results in the minimum average waiting
time (over all processes)?
11 Consider the following set of processes with the length of the CPU burst time
given in milliseconds
Process Burst Time Priority
P1 10 3
P2 1 1
P3 2 3
P4 1 4
P5 5 2
The processes are assumed to have arrived in the order p1, p2, p3, p4, p5 all at
time 0.
a) Draw four Gantt charts illustrating the execution of these processes using
FCFS, SJF, anon pre-emptive priority (a smaller priority number implies a
higher priority) and RR (quantum=1) scheduling.
b) What is the turnaround time of each process for each of the
scheduling algorithms in part?
What is the waiting time of each process for each of the scheduling
algorithms in part? Which of the schedules in part a result in the minimal
average waiting time?
12 Consider the following set of processes with their arrival and burst times as
shown Process A.T B.T
P0 0 10HR
P1 0 05HR
P2 1 02HR
P3 2 01HR
Compute the turnaround time and waiting time of each job using the following
scheduling algorithms.
a. FCFS
b. SJF
c. SJF PREEMPTIVE.
14 Five batch jobs A, B, C, D and E arrive at a computer at almost at the same
time. They have estimated running times of 10,6,2,4 and 8 minutes. Their
priorities are 3,5,2,1 and 4 respectively, with 5 being the highest priority. For
each of the following scheduling algorithm determine the turnaround time of
each process and waiting time of each process. Ignore process switching overhead.
Mention which algorithm results in minimal average waiting time.
Round Robin
Priority scheduling
First come first served
Shortest job first.
For case i) assume that system is multiprocessing and each job gets its fair
share of the CPU. (Time quantum 2 minutes0. For cases (ii), (iii) and (iv)
assume that only one job runs at a time, until it finishes. All jobs are
completely CPU bound.
12 Consider the following set of Processes, with the length of CPU burst in
milliseconds.
Process PI P2 P3 P4 P5
Arrival time 0 2 3 6 3
Burst time 10 12 14 16 5
Draw a Gantt chart that illustrates the execution of these processes using the
preemptive shortest job first (SJF) algorithm. Hence find the average waiting
time. Draw a Gantt chart that illustrate the execution of these processes
using preemptive priority scheduling algorithm. Given priority of each
process is PI = 4, P2=3, P3=5, P4= 1 and P5= 1. Also find the average waiting
time
15 K2
17
K1
20
K3
28 Given six memory partitions of 300 KB, 600 KB, 350 KB, 200 KB, 750 KB, K2
and 125 KB (in order), how would the first-fit, best-fit, and worst-fit
algorithms place processes of size 115 KB, 500 KB, 358 KB, 200 KB, and
375 KB (in order)? Rank the algorithms in terms of how efficiently they use
memory.
29 Memory partitions of 100kb,500 kb,200 kb,300kb,600 kb is available. How
would best fit, worst fit, first fit algorithm to place processes 212,417,112,426 in K2
order. Which is the best algorithm?
30 Consider the reference stream 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6. How K2
many page faults while using FCFS and LRU using 2 frames?
31 What is virtual memory? Explain Suppose we have a demand paged memory. K4
The page table is held in registers. it takes 8ms to service a page fault if an
empty page is available or the replaced page is not modified, and 20ms if the
replaced page is modified. memory access time is 100ns. Assume that the page
to be replaced is modified 70% of the time. what is the maximum acceptable
page fault rate for an effective access time of no more than 200ns?
32 Describe the LRU page replacement algorithm, assuming there are 3 frames and K2
the page reference string is 7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1. Find the
number of page faults.
33 How many page faults occur for LRU algorithm for the following K1
reference string with four-page frames?
1, 2, 3, 4, 5, 3, 4, 1, 6, 7, 8, 7, 8, 9, 7, 8, 9, 5, 4, 5, 4, 2.
7, 2, 3, 1, 2, 5, 3, 4, 6, 7, 7, 1, 0, 5, 4, 6, 2, 3, 0, 1.
Assuming demand paging with three frames, how many page faults
would occur for the following replacement algorithms?
1.LRU replacement
2.FIFO replacement
3.Optimal replacement
Teaching Learning Methods
Proposed Assessment
Course Name Course Code CO/ COs Justification
TLMs Rubrics
Numericals/ Correctness of
Problem CO2, Questions are Solutions,
Operating
R1UC301B based CO3, provided to assess Application of
System.
TLMs CO4 the Cognitive level Concepts,
of students Complete Solutions