Operating System Design/Scheduling Processes/Priority Scheduling
In Priority Scheduling, each process is given a priority, and higher priority methods are executed first, while equal priorities are executed First Come First Served or Round Robin.
There are several ways that priorities can be assigned:
- Internal priorities are assigned by technical quantities such as memory usage, and file I/O operations.
- External priorities are assigned by politics, commerce, or user preference, such as importance and amount being paid for process access (the latter usually being for mainframes).
SPN is a form of priority scheduling based on External Priorities.
Analogy
editInternal: At a store, the person with the right change and only two items gets to check out first. External: At a store, the cashier is bribed by the most important customer, who can thus check out first.
Implementation
editAdvantages and Disadvantages
editA process can sometimes become starved, live locked, or indefinitely blocked. One way to fix this is by aging the priority, so that the longer a process has waited for CPU time, the higher its priority is.