Потребность в приоритетах в управлении потоками и процессами является результатом наличия в
системе системных и пользовательских процессов.
Системные процессы выступают в роли обслуживающих процессов (серверные).
В Windows (NT) существуют 32 приоритета. Приоритет присваивается опе рационной системой при
создании процесса. Первые 16 приоритетов – для пользовательских процессов, остальные – для системных процессов.
Перевод «в фон» снижает приоритет потока. Поток может иметь приоритет ±2 к приоритету процесса.
В OS/2 есть 4 класса прио ритетов в каждом классе 32 приоритета (всего 128):
критический класс, включающий задачи реального времени, обладает самым высоким приоритетом.
серверный класс, к которому относятся задачи, представляющие собой элементы определенной системы.
регулярный (стандартный) класс, включающий все пользовательские задачи.
остаточный класс, который получает время, когда в очереди нет других классов.
Внутри каждого класса карусельная обработка.
При этом, OS/2 самостоятельно пересчитывала приоритет задачи в трех случаях – 1) повышение приоритета активной задачи. 2) повышение приоритета ввода\вывода – система автоматически повышала приоритет задачи, которая завершала операцию ввода\вывода. Задача получала наивысший приоритет в своем классе. 3) повышение приоритета забытых задач. В системе задавалось специальное
значение “специальное время ожидания”, то приоритет такой задачи повышался до минимально возможного приоритета класса критических задач, но это выдается только на 1 квант времени. В системе был параметр, позволяющий включать динамические задачи или выключать. Параметр priority.