Definition
Scheduling Criteria
Scheduling criteria are the dimensions used to select a scheduling algorithm. They are categorised based on whether they focus on the user or the system, and whether they are performance-related or not.
Taxonomy of Criteria
| Category | Performance-Related | Other (Qualitative) |
|---|---|---|
| User-Oriented | Response Time: Delay for user input. Turnaround Time: Time to finish. Deadlines: Completion constraints. | Predictability: Consistency of response times. |
| System-Oriented | Throughput: Processes per hour. Processor Utilisation: CPU busy time. | Fairness: Equal share of CPU. Resource Balance: Busy I/O devices. Priorities: Importance levels. |
Trade-offs
- User vs. System: A strategy that minimises user response time (like Round Robin with small quanta) may decrease system throughput due to high context switch overhead.
- Fairness vs. Throughput: FCFS is fair in terms of arrival but can result in poor throughput if a long process blocks I/O-bound ones (the convoy effect).
- Predictability vs. Performance: Real-time systems often sacrifice absolute performance to ensure that task execution is predictable and deadlines are met.