The 5 Types Of Processor Scheduling :spiral_calendar_pad: (What is…
The 5 Types Of Processor Scheduling :spiral_calendar_pad:
Key Terms :bookmark:
:tornado:An area where the data that is not in use is put in so that the CPU can continue with another task. The buffer compensate for the
difference in speed
between in an I/O device and the CPU.
:check: This is the process where the operating system checks an input/ output device is switched on, is online or that it is the correct device.
Backing Store Management:
where files and applications are kept
before they are transferred into the main memory to be used by the CPU. The operating system needs to know where the files are stored so that they can be
and it needs to know which area of
storage is free
so that new files and applications can be saved. Most operating systems usually have a
system to enable users to move and delete files and protect others from unauthorised access.
Multi-level feedback queue :pancakes:
A real life example of this is when a user is trying to print something :printer:. The multi-level feedback queue tries to keep the input or output devise as busy as possible to avoid a
occurring when several programs suddenly need to send data to the printer, because the I/O has a slower processing speed. So,
whilst one job is printing, other jobs can use the processor
This is considered to
way since it maximises processor use, but it is only used in
modern operating systems
. The algorithms used in MFQ usually give preference short processes and I/O bound processes and sort processes into categories based on their need for the processor.
This is where
several ready queues
different scheduling algorithms
are used. Jobs are allowed to move between queues as their priorities change. This is
Shortest remaining time :penguin: :recycle:
This is used for
:money_with_wings:or jobs that
which are usually performed overnight,
, longer processes may go into '
' as the shorter ones keep coming. The system also needs to have knowledge on how long a job will take (the user has to estimate its job time :thinking_face:).
is sorted in order of the estimated processing time needed (just like in SJF). However, if a process that arrives has a shorter time to complete than the process that is currently running, the shorted process will move to the running state. This is basically
version of SJF.
Shortest Job First :chicken: :chicken: :hatched_chick:
Shortest jobs first can be used in a University :school:, where students can get their short programmes run quickly before larger research and administration programs which are not time critical, which would otherwise make them longer to complete.
Provided that the system can calculate estimated processing times, it will
The jobs are sorted int the ready queue according to the estimated processing time. This means that
the shortest job will be processed first
. This is
First Come First Serve :squid::squid::squid:
This may not be very efficient since long processes can cause the others to wait a long time. There is
no system of priorities
The first job in the queue is the first to enter the
. This is not
Round Robin :bird:
Round Robin is the
but the most
. it does guarantee a responsible response time to all users in a system, and some systems allow high priority jobs to have more than one consecutive time slice.
The operating systems sets up an
to generate interrupts at specific times :mantelpiece_clock:. Each process is given a maximum length of processing time, called a '
' or a '
:cake: . If a process runs out of processing time, or a higher priority interrupt occurs, it is put back into the ready queue. This dispatcher then give the CPU the next proceeds. This is
What is processor scheduling? :stopwatch:
These 5 ways of scheduling are sorted in most fair first.
:hand: is is the act of temporarily interrupting a task being carried out by a computer system and resuming the task later.
The scheduler is necessary to
to all users on a
acceptable response time
to all users and ensures
are kept as busy as possible.
is used in
environments and it manages which process to execute next and how much
the process can execute for.