Einführung

Real Time Scheduling Algorithms → Resource Access (priority based, preemptive)

There are cases in which tasks must be granted exclusive access to resources such as global shared variables or devices in order to avoid non-deterministic or oherwise unwanted program behavior. Program sections during which such exclusive access is required are called critical sections.

Tasks not being granted exclusive access have to wait until the resource is released. Accordingly, the release operation has to check for waiting tasks and resume the task of hightest priority. We will call the request operation P(S) and the release operation V(S), where S corresponds to the particular resource requested.

For tasks with critical sections, there is a crucial effect called priority inversion. In general case, priority inversion exists if some lower priority task is effectively preventing a higher priority task form executing due to the exclusive use of some resources. Unfortunately there is no upper bound for the duration of the blocking in the general case. Hence, the duration of the priority inversion situation is not bounded by the length of any critical section.

 
Introduction > Real Time Scheduling Algorithms > Resource Access Protocol (priority based, preemptive)

Back Next

Startseite   Tutorials   Einführung