A formalization of priority inversion

A priority inversion occurs when a low-priority task causes the execution of a higher-priority task to be delayed. The possibility of priority inversions complicates the analysis of systems that use priority-based schedulers because priority inversions invalidate the assumption that a task can be delayed by only higher-priority tasks. This paper formalizes priority inversion and gives sufficient conditions as well as some new protocols for preventing priority inversions.

[1]  Robert H. Thomas,et al.  A Majority consensus approach to concurrency control for multiple copy databases , 1979, ACM Trans. Database Syst..

[2]  Krithi Ramamritham,et al.  Preemptive Scheduling Under Time and Resource Constraints , 1987, IEEE Transactions on Computers.

[3]  James W. Havender Avoiding Deadlock in Multitasking Systems , 1968, IBM Syst. J..

[4]  Peter J. Denning,et al.  Operating Systems Theory , 1973 .

[5]  Lui Sha,et al.  Priority Inheritance Protocols: An Approach to Real-Time Synchronization , 1990, IEEE Trans. Computers.

[6]  Leslie Lamport,et al.  Distributed snapshots: determining global states of distributed systems , 1985, TOCS.

[7]  Sándor Vágvölgyi,et al.  An infinite hierarchy of tree transformations in the class NDR , 1987, Acta Cybern..

[8]  Keith Marzullo Concurrency Control for Transactions with Priorities , 1989 .

[9]  Bo Munch-Andersen,et al.  Scheduling according to job priority with prevention of deadlock and permanent blocking , 2004, Acta Informatica.

[10]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[11]  梅村 恭司 Andrew S.Tanenbaum 著, "Operating systems, Design and implementation", PRENTICE-HALL, INC., Englewood Cliffs, B5変形判, 719p., \4,120 , 1988 .

[12]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[13]  Alan Shaw,et al.  The logical design of operating systems , 1987 .

[14]  Butler W. Lampson,et al.  Experience with processes and monitors in Mesa , 1980, CACM.

[15]  Hector Garcia-Molina,et al.  Scheduling Real-Time Transactions with Disk Resident Data , 1989, VLDB.

[16]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .