Operating System Design/Scheduling Processes/Priority Scheduling
Appearance
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
[edit | edit source]Internal: 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
[edit | edit source]Advantages and Disadvantages
[edit | edit source]A 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.