Разделы:


Best links:

Управление процессами

Для выбора следующего выполняемого процесса планировщик должен просматривать приоритетную таблицу, начиная с наивысшего приоритета, до обнаружения ненулевого указателя первого элемента, а затем удалить этот процесс из очереди готовности. Преимущество использования bpq заключается в возможности динамического изменения приоритета данного процесса. Предположим, что приоритет процесса x необходимо изменить на приоритет y. Сначала процесс x удаляется из его текуoей приоритетной цепочки с помощью следующих операций:

fqp(bqp(x)) <- fqp(x),

bqp(fqp(x)) <- bpq(x)

Конечно, если процесс x является верхним или нижним элементом в его текущей приоритетной цепочке, потребуется дополнительная коррекция приоритетной таблицы. Затем процесс xдобавляется в низ цепочки, соответствующей приоритетному уровню y. Это сопровождается модификацией указателя последнего элемента (а также указателя первого элемента, если цепочка была пустой)  fqp текущего последнего элемента в цепочке, а также fqp и bqp добавляемого элемента.

Некоторые мультипрограммные операционные системы оказываются более сложными, чем показанная на рис. 7.4, и допускают более трех основных состояний процессов. Обычно в этом случае дополнительные состояния представляют собой другие формы заблокированного состояния.

предыдущаяследующая