Queue & scheduling
What is queue discipline?
Queue discipline is the rule that determines the order in which waiting jobs are served, such as first-come, first-served or priority-based ordering.
Also known as: queuing discipline, scheduling policy, FIFO
The common disciplines
- FCFS / FIFO (first-come, first-served): served in submission order. The default for shared labs because it is the easiest to explain and the hardest to dispute.
- Priority: designated jobs move ahead. Necessary for deadlines and customer orders; corrosive if used casually.
- Shortest job first: maximises the number of jobs completed, at the cost of starving long prints indefinitely.
- Fair share: caps how much of the queue any one requester can occupy, which matters when a handful of heavy users can otherwise crowd out everyone else.
Fairness is a perception problem as much as a scheduling one
A queue can follow its policy and still be distrusted if nobody can see it. Publishing the normal order and making exceptions visible often matters as much as the scheduling rule itself.