Skip to content

Latest commit

 

History

History
23 lines (14 loc) · 2.68 KB

File metadata and controls

23 lines (14 loc) · 2.68 KB

CPU_Process_scheduling-and-deadlock_detection

CPU Process Scheduling and Deadlock Detection Using Bankers Algorithm


The process scheduling is the activity of the process manager that handles the removal of the running process from the CPU and the selection of another process on the basis of a particular strategy. Process scheduling is an essential part of a Multiprogramming operating systems.


Features of this program:

FCFS (First come first serve): The first come, first served (commonly called FIFO ‒ first in, first out) process scheduling algorithm is the simplest process scheduling algorithm. It is rarely used in modern operating systems, but is sometimes used inside of other scheduling systems.

SJF (Shortest Job First) : SJF can be either preemptive or non-preemptive. Preemption occurs when a new process arrives in the ready queue that has a predicted burst time shorter than the time remaining in the process whose burst is currently on the CPU. Preemptive SJF is sometimes referred to as shortest remaining time first scheduling.

Round Robin : Round Robin is a CPU scheduling algorithm where each process is assigned a fixed time slot in a cyclic way. One of the most commonly used technique in CPU scheduling as a core. It is preemptive as processes are assigned CPU only for a fixed slice of time at most.

Shortest Remaining Time First (SRTF) : Shortest remaining time, also known as shortest remaining time first (SRTF), is a scheduling method that is a preemptive version of shortest job next scheduling. In this scheduling algorithm, the process with the smallest amount of time remaining until completion is selected to execute.

Deadlock detection using Banker's algorithm : A deadlock detection algorithm is correct if it satisfies two conditions: 1) every deadlock is eventually detected (ba- sic progress property), and 2) every detected deadlock really exists, i.e., only genuine deadlocks are detected (safety prop- erty). While the first condition is intuitive, the second one needs to be explained.

Gantt chart : A Gantt chart is a type of bar chart that illustrates a project schedule. Gantt charts illustrate the start and finish dates of the terminal elements and summary elements of a project. Terminal elements and summary elements comprise the work breakdown structure of the project.

All of the above mentioned features and properties are supported by this program. It can be helpful for those having trouble in coding these algorithms.