operating-systems scheduling

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

CategoryPerformance-RelatedOther (Qualitative)
User-OrientedResponse Time: Delay for user input.
Turnaround Time: Time to finish.
Deadlines: Completion constraints.
Predictability: Consistency of response times.
System-OrientedThroughput: 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.