FOR FREE MATERIALS

Different Type Scheduling Algorithms

 

Selection function:

The selection function determines which process, among ready processes, is selected next for execution. The function may be based on priority, resource requirements, or the execution characteristics of the process.

 

The decision mode specifies the instant in time at which the selection function is exercise. There are two general type categories.

 

(i) Non-preemptive (Co-operative) scheduling: 

A process is running in CPU (Running State), it continues to execute until a) it blocks itself to wait for I/Oor to request some operating system service or (b)terminated by its completion. 

 

  • a. First Come First Served (FCFS) scheduling
  • b. Shortest Job First (SJF) /Shortest Request Next (SRN) scheduling
  • c. Longest Job First (LJF) /Longest Request Next (LRN) scheduling
  • d. Priority scheduling
  • e. Highest Response Ratio Next(HRRN) scheduling

 

(ii) Preemptive scheduling:

The currently running process may be interrupted and move forcefully to the ready state by the OS. The decision to preempt a process from running state to ready state due to many interrupts (like internal interrupt or software interrupt) or periodically, based on a clock timer/time quantum (external interrupt).

 

  • a. Round Robin Scheduling (RR)
  • b. Shortest Remaining Time First (SRT) /Shortest Time to Go (STG) (Preemptive SJF)
  • c. Longest Remaining Time First (LRT) / Longest Time to Go (LTG)  (Preemptive LJF)
  • d. Priority scheduling
  • e. Least Completed Next (LCN) scheduling

 

iii) Other

  • a.  Multiple Queues 
  • b.  Multiple Feedback Queues

 

Different scheduling algorithms are needed for a different environment. We can also be categorized the scheduling algorithm as per the different environments.

 

1. Batch System

a. First Come First Served (FCFS)

b. Shortest Job First (SJF) / Shortest Request Next (SRN) scheduling

c. Longest Job First (LJF) / Longest Request Next (LRN) scheduling

d. Shortest Remaining Time First (SRT) / Shortest Time to Go (STG) (Preemptive SJF)

e. Longest Remaining Time First (LRT) / Longest Time to Go (LTG) (Preemptive LJF)

 

2. Interactive System

a. Round Robin Scheduling

b. Priority scheduling

c. Multiple Queues

d. Shortest Job First (SJF) / Shortest Request Next (SRN) scheduling

e. Guaranteed Scheduling

f. Lottery Scheduling 

g. Fair-Share Scheduling

 

3. Real Time

Real-time scheduling algorithms can be static or dynamic. The former make their scheduling decisions before the system starts running. The latter make their scheduling decisions at run time after execution has started. Static scheduling works only when there is perfect information available in advance about the work to be done and the deadlines that have to be met. Dynamic scheduling algorithms do not have these restrictions.