Job Scheduling Algorithms – Q&A

Question 1[20 marks]
One of the main purpose of the Operating System is to control the hardware and more specifically the CPU. The CPU performs all the jobs/processes requested by the different applications. A scheduler is a program of the Operating System that manages the amount of time that is allocated to each job that the CPU needs to process. To do so the scheduler keeps a list of all the jobs that needs to be processed. This is called the job queue. The scheduler also uses a scheduling algorithm to determine in which order these jobs will be processed and the mount of processing time to allocate to each job.

The main job scheduling algorithms are:
  • FCFS: First Come First Served
  • Round Robin
  • Shortest Job First
  • Shortest Remaining Time First
  • Multilevel Feedback Queues
This question is based on the following job queue:
job-queue
For each of the following scheduling algorithms:
  1. Determine the order in which each job will be processed by the CPU (e.g. ABCD).
  2. Estimate the completion time for each job in the queue.
Current time: 01:00 (mm:ss) – Round Robin Time Slice: 1s
FCFS: ……………
    Job A: Completion time: 
    Job B: Completion time: 
    Job C: Completion time: 
    Job D: Completion time: 

Round Robin: ……………
    Job A: Completion time: 
    Job B: Completion time: 
    Job C: Completion time: 
    Job D: Completion time: 

Shortest Job First: ……………
    Job A: Completion time: 
    Job B: Completion time: 
    Job C: Completion time: 
    Job D: Completion time: 

Shortest Remaining Time First: ……………
    Job A: Completion time: 
    Job B: Completion time: 
    Job C: Completion time: 
    Job D: Completion time: 

Question 2[4 marks]
Some job scheduling algorithms can potentially lead to starvation? Out of the four algorithms listed in question 1, what algorithms can potentially lead to starvation? Explain what would cause this?
Save / Share Answers as a link
unlock-access

Solution...

The solution for this challenge is available to full members!
Find out how to become a member:
➤ Members Area