Open In App

Difference between LJF and LRJF CPU scheduling algorithms

Improve
Improve
Like Article
Like
Save
Share
Report

1. Longest Job First (LJF) :
It CPU Scheduling algorithm where the process with the largest burst line is executed first. Once the process enters the ready queue, the process exits only after the completion of execution, therefore it is a non-preemptive process. In case, the burst times of the processes are same, the job with overall lowest time is selected. This CPU scheduling algorithm results in low throughput of the system.

Process AT BT
1 0 3
2 1 2
3 2 4
4 3 5
5 4 6



2. Longest Remaining Job First (LRJF) :
It is the preemptive version of Longest Job First CPU Scheduling Algorithm. The process Burst Time are chosen at every second and then the longest job is selected. In case, the Burst Time of the processes are same, the job with overall low arrival time is selected.

It suffers from starvation, because of simultaneous checking of processes’ remaining Burst Time. It is also called “Longest Remaining Time First” algorithm.

Process AT BT
1 0 3
2 1 2
3 2 4
4 3 5
5 4 6



Difference between LJF and LRJF CPU scheduling algorithms :

LJF LRJF
Non preemptive Preemptive
It suffers from starvation It also suffers from starvation
Waiting Time is high Waiting Time is not so high, and processes get chances for execution after some interval.
Switching context is less, since a process that once enters running state is executed completely. Switching context is more, since the process are continually checked for execution.
The processes are executed based on their CPU time and arrival time alone, without increasing CPU overload. The processes are repeatedly checking for an idle CPU, thereby increasing the overload.
No process can complete its execution until longest job persists. The processes can complete execution before the longest process.


Last Updated : 17 Jul, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads