Scheduling Algorithms
Scheduling Algorithms
Algorithms
Presented by Supervised By
Zine El Abidine ACHAGHOUR Prof. BOUFALA
Aziz ESSADEQ
Reda El BETTIOUI
TABLE OF
CONTENTS
Introduction
Why Scheduling Algorithms ?
Scheduling Problem Formulation
Types of Scheduling Algorithmes
Introduction to FIFO and Round Robin
INTRODUCTION
Imagine you're the manager of a bustling restaurant with limited seating capacity.
Customers arrive at different times, each wanting to be seated promptly and served their
meals without undue delay. Just as you need to efficiently allocate tables and coordinate
food preparation to ensure customer satisfaction, scheduling algorithms play a similar role
scheduling algorithms help ensure smooth operations and timely execution. Much like
orchestrating the seating arrangements and meal service in a busy restaurant, scheduling
Assigns priorities to tasks based on criteria like importance or urgency. Selects the task with the shortest processing time for execution next.
Examples: Priority Scheduling, Earliest Deadline First (EDF). Variants: Shortest Remaining Time First (SRTF).
Allocates fixed time slices to tasks in a cyclic manner. Executes tasks in the order they arrive.
Ensures fairness by providing equal opportunity to all tasks. Simple and easy to implement.
Considers both processing time and slack time of tasks. Uses multiple queues with different priority levels.
Aims to maximize idle time remaining after completing all tasks. Tasks are promoted or demoted between queues based on performance.
FIFO AND ROUND ROBIN ( RR )
principle of processing tasks in the order they arrive. Tasks are queued up and executed one
by one, with the first task to arrive being the first to be processed. FIFO scheduling is easy to
implement and ensures fairness, but it may lead to longer waiting times for later-arriving
slices, called time quanta, to tasks in a cyclic manner. Tasks run for their time quantum, and
if not completed, they're preempted, allowing other tasks to execute. Round Robin ensures
fairness by giving equal CPU time to tasks but may face high overhead from frequent