Inwersja priorytetów
Inwersja priorytetów – zjawisko mogące występować w wielozadaniowych systemach operacyjnych takie, że w danej chwili wykonuje się inne zadanie niż powinno się wykonywać zgodnie z regułami algorytmu szeregowania.

Pojawienie się inwersji priorytetów związane jest najczęściej z dostępem zadań do zasobów chronionych przez algorytmy synchronizacji międzyprocesowej takie jak na przykład semafory. W praktyce inwersja priorytetów to zdobycie przez zadanie będące w sekcji krytycznej pierwszeństwa w dostępie do procesora kosztem zadań o wyższych priorytetach.

W niektórych przypadkach inwersja priorytetów może powodować opóźnienie w wykonywaniu zadań o wysokim priorytecie, ewentualnie zadania o niskim priorytecie mogą zwalniać dzielone zasoby, co odbywa się zwykle bez większej szkody. Jednakże istnieje wiele sytuacji, w których inwersja priorytetów może sprawić spore problemy. Jeśli zadanie o wysokim priorytecie ulega zagłodzeniu, może doprowadzić do nieprawidłowego działania systemu lub wywoływać działania zapobiegające uszkodzeniu, takie jak watchdog restartujący cały system. Klasycznym przykładem problemów spowodowanych inwersją priorytetów w systemie czasu rzeczywistego są kłopoty z działaniem lądownika sondy kosmicznej Mars Pathfinder.

Inwersja priorytetów może również ograniczyć wydajność systemu. Niektóre zadania mają niski priorytet dlatego, że nie jest dla nich ważna szybka realizacja (np. nie wymagają interakcji użytkownika lub jest to seria zadań w przetwarzaniu wsadowym). Odwrotnie jest natomiast z zadaniami o wysokim priorytecie – te z kolei często wymagają jakiejś interakcji lub pełnią ważną rolę gwarantującą poprawne działanie aktualnie wykorzystywanych elementów systemu. Inwersja priorytetów powoduje to, że wywoływanie zadań o niskim priorytecie blokuje zadania z wysokim priorytetem, co może doprowadzić do utraty stabilności i zawieszeń systemu.
Q192969
wielozadaniowych
Concept
Q9135
systemach operacyjnych
Concept
Q1123036
algorytmu szeregowania
Concept
None
synchronizacji międzyprocesowej
UNK
Q221682
semafory
UNK
Q1046373
sekcji krytycznej
UNK
Q2295611
zagłodzeniu
UNK
Q1334191
watchdog
Concept
Q201771
Mars Pathfinder
MISC
Q661613
przetwarzaniu wsadowym
Concept
Q520734
Inwersja priorytetów
Concept
Q520734
Inwersja priorytetów
Concept
Q520734
Inwersja priorytetów
Concept
facet of
facet of
part of