Scheduling algorithms: -
-Scheduling algorithms are computational techniques used to
manage and optimize the allocation of resources over time.
-They are applied in a wide range of fields, including
computer science, manufacturing, transportation, and project management, to
ensure efficient resource utilization.
-There are many job scheduling algorithms some of them are
mentioned below,
i. Job Scheduling
Algorithms
ii. Task/Process
Scheduling Algorithms
iii. Real-Time Scheduling Algorithms
iv. Batch Scheduling Algorithms
v. Disk Scheduling
Algorithms
vi. Machine Scheduling Algorithms
Job scheduling:-
-Job scheduling refers to the process of allocating and
managing tasks or jobs in a way that optimizes resource utilization, reduces
waiting times.
- There are various scheduling algorithms like FCFS
(First-Come, First-Served), SJF (Shortest Job First), Priority Scheduling, and
EDF (Earliest Deadline First), each with its own approach to task
prioritization and resource allocation.
-Ex. In a computer's operating system, it's like deciding
which programs and tasks to run, in which order, and for how long to ensure
your computer runs smoothly and responsively.
The activity selection problem: -
-The goal is to select activities to maximize the number of
non-overlapping tasks that can be accomplished within a given time frame,
ensuring efficient resource utilization and avoiding conflicts.
-The most common approach to solving the activity selection
problem is a greedy algorithm.
-Ex. Imagine you have a conference room booked for a day and
multiple meetings scheduled. You want to choose the meetings that don't overlap
in time to make the best use of the room.
0 Comments