OS-Deadline Scheduling

In deadline scheduling certain jobs are scheduled to be completed within a specific time or deadline. These jobs may have very high value if delivered on time and may be worthless if delivered later than the deadline. The user is often willing to pay a premium to have the system ensure on-time consumption. Deadline scheduling is complex for many reasons.
  •  The user must supply the resource requirements of the job in advance. Such information is rarely available.
  •  The system must run the deadline job without severely degrading service to other users.
  •  The system must plan its resource requirements through to the deadline because new jobs may arrive and place unpredictable demands on the system.
  •  If many deadline jobs are to be active at once, scheduling could become so complex.
  •  The intensive resource management required by deadline scheduling may generate substantial overhead.

FIRST-IN-FIRST-OUT (FIFO) SCHEDULING:

First-in-first-out is the simplest scheduling processes are dispatched according to their arrival time on the ready queue. Once a process has the CPU, it runs to completion. FIFO is a nonpreemptive discipline. It is somewhat unfair in that long jobs make short jobs wait, and unimportant jobs make important jobs wait. This scheduling is not useful for interactive users because it cannot guarantee good response times.




FIFO is often embedded within other schemes. For example, many scheduling schemes dispatch processes according to priority, but processes with the same priority are dispatched FIFO.

ROUND ROBIN (RR) SCHEDULING:

In round robin(RR) Scheduling processes are dispatched FIFO but are given a limited amount of CPU time called a time-slice or a quantum. If a process does not complete before its CPU time expires, the CPU is preempted and given to the next waiting process. The preempted process is then placed at the end of the ready list. Round Robin is effective in timesharing environments in which the system needs to guarantee reasonable response times for interactive users.


kleinrock discusses a variant of round robin called selfish round robin. In this scheme, as processes enter the system, they first reside in a holding queue until their priorities reach the levels of processes in an active queue.

Share this article :
 
Copyright © 2012. Best Online Tutorials | Source codes | Programming Languages - All Rights Reserved