Udostępnij przez


Priorytety wątków

Niektóre sterowniki tworzą własne systemowe wątki dedykowane sterownikom lub urządzeniom i ustawiają bazowy priorytet wątku na najniższą wartość priorytetu czasu rzeczywistego. Inne sterowniki najwyższego poziomu, szczególnie sterowniki systemu plików, używają wątków procesów roboczych systemu z priorytetem podstawowym, który jest zwykle ustawiony na najwyższą wartość priorytetu zmiennej. Jądro planuje wątek z najniższym priorytetem czasu rzeczywistego, aby był uruchamiany przed każdym wątkiem o zmiennym priorytcie, który obejmuje prawie każdy wątek trybu użytkownika w systemie.

Większość standardowych procedur sterowników jest uruchamiana w nieokreślonym kontekście wątku, przed wszystkimi wątkami, które są aktualnie w stanie gotowości.

Wątki, niezależnie od ich priorytetów w czasie wykonywania, działają na IRQL = PASSIVE_LEVEL. Wiele standardowych procedur sterowników jest uruchamianych na poziomie IRQL PASSIVE_LEVEL > takich jak DISPATCH_LEVEL lub DIRQL.

Aby uzyskać więcej informacji na temat priorytetów wątków, zobacz oficjalny dokument Planowanie, Kontekst wątku i IRQL .