0% found this document useful (0 votes)
6 views11 pages

Apex Institute of Technology: Department of Computer Science & Engineering

The document outlines the fundamentals of process scheduling in operating systems, detailing its purpose, roles, and various scheduling algorithms such as FCFS, SJF, RR, and Priority Scheduling. It emphasizes maximizing CPU utilization, ensuring fairness, and improving system performance and responsiveness. Additionally, it includes course outcomes and a syllabus for a computer science course on operating systems.

Uploaded by

dhamabhumika4
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views11 pages

Apex Institute of Technology: Department of Computer Science & Engineering

The document outlines the fundamentals of process scheduling in operating systems, detailing its purpose, roles, and various scheduling algorithms such as FCFS, SJF, RR, and Priority Scheduling. It emphasizes maximizing CPU utilization, ensuring fairness, and improving system performance and responsiveness. Additionally, it includes course outcomes and a syllabus for a computer science course on operating systems.

Uploaded by

dhamabhumika4
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 11

APEX INSTITUTE OF

TECHNOLOGY
DEPARTMENT OF COMPUTER SCIENCE &
ENGINEERING

OPERATING SYSTEM
Faculty: Ms. Anudeep Kaur(E16380)

Lecture 2 DISCOVER . LEARN .


EMPOWER 1
Table of Contents

Introduction to Process Scheduling


Purpose of Process Scheduling
Roles of Process Scheduling in Operating System
Examples of Scheduling Algorithms
COURSE OUTCOME
CO1 Remember and understand fundamental functions of operating system.

CO2 Understand Process and Disk scheduling algorithms and apply the best scheduling
algorithm for a given problem instance.

CO3 Apply an algorithm for process scheduling, deadlock avoidance and file management.

CO4 Identify and analyze memory management techniques and apply them for memory
management related problems.

CO5 Analyze the performance of process management, resource management and


deadlock management techniques and apply the best methods for a given problem
instance.
UNIT-1 SYLLABUS
Unit-1 Contact Hours: 15 HOURS

Operating System Introduction to Operating Systems, Operating System Structure, Main Functions and
characteristics of Operating Systems, Types of Operating Systems, System calls, Types of
Overview system calls, System programs, Reentrant Kernels, Monolithic and Microkernel Systems

Process Process Concept, Process Control Block, Process Scheduling, Threads, CPU Scheduling:
Preemptive/Non-Preemptive Scheduling, Scheduling Criteria, Scheduling Algorithms
Management (FCFS, SJF, RR), Priority, real-time scheduling.

Semaphores Inter Process Communication, Semaphores, Atomic Transactions, Semaphore


Implementation-1, Semaphore Implementation-2
Introduction to
Process Scheduling
Process scheduling is the operating The process scheduling is the
system's mechanism for deciding which activity of the process manager
that handles the removal of the
processes to execute and when. It is a
running process from the CPU
crucial component that ensures efficient and the selection of another
utilization of system resources and process on the basis of a
maintains fairness among competing particular strategy. Process
processes. scheduling is an essential part of a
Multiprogramming operating
systems.
Purpose of Process Scheduling
The primary purpose of process scheduling is to:
1.Maximize CPU Utilization: Ensure that the CPU is kept as busy
as possible, avoiding idle times.
2.Ensure Fairness: Allocate CPU time equitably among
processes, ensuring that no process is starved of resources.
3.Optimize System Performance: Improve overall system
throughput, response time, and turnaround time.
4.Maintain System Responsiveness: Provide timely responses
to user interactions, especially in interactive systems.
Examples of Scheduling Algorithms:
1.First-Come, First-Served (FCFS):
Processes are scheduled in the order they arrive in the ready queue. While simple, this can lead to the "convoy effect,"
where shorter processes wait for longer ones to complete.
2. Shortest Job Next (SJN):
Shortest Job First (SJF) is a scheduling algorithm used in operating systems. It is also known as Shortest Job Next (SJN) or
Shortest Process Next (SPN).
Prioritizes processes with the shortest execution time. This can reduce average waiting time but requires accurate prediction of
process lengths.
3. Round Robin (RR):
Each process is assigned a fixed time slice (quantum) and is cycled through the ready queue. This is effective for time-
sharing systems, ensuring that all processes get CPU time regularly.
4. Priority Scheduling:
Processes are scheduled based on priority levels. Higher-priority processes are given preference, which is useful for
ensuring critical tasks are completed promptly.
Roles of Process Scheduling in Operating System
•Maximizing CPU Utilization: •Supporting Multiple Users and
The scheduler ensures that the CPU is Applications:
always assigned to a process, •Improving System Responsiveness: •In multi-user systems, the scheduler
minimizing idle time and maximizing The scheduler prioritizes processes based on ensures that resources are shared
the overall CPU utilization. This is various criteria, such as user interaction or equitably among all users. This
crucial for maintaining high system process priority. For example, interactive prevents any single user or
performance. processes are given higher priority to ensure application from degrading the
the system responds quickly to user inputs, performance of others, maintaining
enhancing the user experience. system stability and responsiveness.

•Balancing System Load: •Reducing Process Wait Time and


•Ensuring Fairness: Turnaround Time:
Effective scheduling distributes
Scheduling algorithms ensure that all Scheduling algorithms aim to minimize
the CPU time among processes
processes get a fair share of the CPU the time processes spend waiting in the
efficiently, balancing the system
time. This prevents any single process ready queue (wait time) and the total time
load. This helps prevent situations
from monopolizing the CPU, which is taken from submission to completion
where some processes are
especially important in multi-user systems (turnaround time). This ensures that
starved of CPU time while others
and environments with multiple processes are completed in a timely
receive too much, leading to
concurrently running applications. manner, improving overall system
inefficiencies.
performance
Back Exercise
•Explain the concept of process scheduling in an operating system.
•Describe the main objectives of process scheduling.
•What are the different types of process scheduling algorithms? Provide a brief description of each.
•How does the operating system determine which process to schedule next?

•Define process scheduling.


•List the key purposes of process scheduling in an operating system.
•How would you design a scheduling algorithm to minimize waiting time for processes?
•Describe how process scheduling can be used to improve system responsiveness.
E-Video Links
https://www.youtube.com/watch?v=bkSWJJZNgf8&list=PLxCzCOWd
7aiGz9donHRrE9I3Mwn6XdP8p
• https://www.youtube.com/watch?v=vBURTt97EkA&list=PLBlnK6fE
yqRiVhbXDGLXDk_OQAeuVcp2O
• https://nptel.ac.in/courses/106/108/106108101/
.

You might also like