Blocking and priority inversion
A ready job is blocked when it is prevented from executing by a
lower-priority job; a priority inversion is when a lower-priority
job executes while a higher-priority job is blocked
• These occur because some jobs cannot be preempted:
– Many reasons why a job may have non-preemptable sections
• Critical section over a resource
• Some system calls are non-preemptable
• Disk scheduling
– If a job becomes non-preemptable, priority inversions may occur, these
may cause a higher priority task to miss its deadline
– When attempting to determine if a task meets all of its deadlines, must
consider not only all the tasks that have higher priorities, but also non-
preemptable regions of lower-priority tasks
• Add the blocking time in when calculating if a task is schedulable
0 comments:
Feel free to contact the admin for any suggestions and help.