Scheduling criteria is also called as scheduling methodology. Key to multiprogramming is scheduling. Different CPU scheduling algorithm have different properties .The criteria used for comparing these algorithms include the following:
-
CPU Utilization:
Keep the CPU as busy as possible. It range from 0 to 100%. In practice, it range from 40 to 90%.
-
Throughput:
Throughput is the rate at which processes are completed per unit of time.
-
Turnaround time:
This is the how long a process takes to execute a process. It is calculated as the time gap between the submission of a process and its completion.
-
Waiting time:
Waiting time is the sum of the time periods spent in waiting in the ready queue.
-
Response time:
Response time is the time it takes to start responding from submission time. It is calculated as the amount of time it takes from when a request was submitted until the first response is produced.
-
Fairness:
Each process should have a fair share of CPU.
Scheduling Algorithm Goals
-
All Systems:
- Fairness:- Fair share of CPU to every process
- Policy Enforcement: Stated policy is implemented properly
- Balance: Keeping all resources equally busy
-
Batch System:
- Throughput:- Maximize jobs per unit time
- Turnaround Time:- Minimization of time between submission and termination
- CPU Utilization:- Keep CPU busy all the time
-
Interactive System:
- Response Time:- Quick response to request
- Proportionality:- Meet user’s expectation
-
Real Time System:
- Meeting Deadlines:- Avoiding losing data
- Predictability:- Avoid quality degradation