Module 19: Multi-core computing Operating Systems
  Lecture 38: Priority and Schedule
 


Issues With Priority

  • Priority definition.
    • How to define a priority?
      • System policies: Charge, job quantum, I/O
      • External or internal definition.
  • Pre-emptive vs. non-preemptive
    • When a process arrives, should we remove the running process? (e.g. SRTF + Priority)
  • Starvation
    • When high priority jobs come at a frequency that a low priority job is blocked.
    • Solution: add “aging”.

Aging with Priority

  • Each time a process is scheduled,
    • Increase the priority of each pending task by 1. (could even be periodic)
  • Priority: defined at admission time only.
  • In pre-emptive scheduling.
    • When a job is pre-empted, reset the priority.
  • Guaranteed “No starvation”.