Scheduling Flashcards
What does RR stand for
Scheduling
What does FCFS stand for
First Come First Serve
What does MFQ stand for
Multilevel feedback queues
What does SJF stand for
Shortest job first
What does SRT stand for
Shortest remaining time
What are schedulers used for
Used by operating systems to manage the jobs that are being completed by the CPU to ensure maximum use of processing time.
Explain Round robin
Most basic scheduler
Each time a job comes it to be completed it is added to the end of a queue.
Each job is given an amount of time to be completed, if it is not completed within the set time, then it is pushed to the bottom of the queue.
What are the benefits and negatives of Round robin
Can work well if all the jobs are similar in size and similar in priority.
The system ignores any priority of a job and ignores that each job will take different amounts of time, so it can be very inefficient.
Explain FCFS
As jobs come in they are added to the queue
Jobs are completed in the order they came in regardless of time take or priority.
What are the benefits and negatives of FCFS
Very easy to set up
Can cause a long delay in getting jobs done.
Generates bad performance within a computer system.
Explain Multi-level feedback queues
There are multiple queues of jobs.
The CPU switches between queues to get jobs to complete.
If a job is waiting too long in one queue, it will be moved to a higher priority location in another queue to get the job completed quicker.
Each separate queue has its own scheduler.
What are the benefits and negatives of Multi-level feedback queues.
They offer the best results.
Very CPU intensive
Explain SJF
Selects the shortest job in the queue to complete first.
What are the benefits and negatives of SJF
As it is always looking for the shortest job, larger processes can face starvation.
Not feasible for implementation as the operating system as you rarely know the amount of time to complete each new job.
Explain SRT
A pre-emptive version of shortest job first.
As a job arrives, it is compared to the currently running job, if it is longer than the current job, then it is added to a queue.
If the new job is shorter, then the current job is pushed to the queue.