Введение в архитектуру компьютеров

         

Планирование по наивысшему приоритету


В этом методе HPF (highest priority first) процессор предоставляется тому процессу, который имеет наивысший приоритет. И если не допускается вытеснение процесса, то он выполняется до тех пор, пока не выполнится или не будет заблокирован. Если вытеснение разрешено, то поступивший процесс с более высоким приоритетом прервет выполняющийся процесс и ему будет передано управление на выполнение. Вытесненный процесс перейдет в очередь готовых процессов. Если процессор освободился, то ему из Ог назначается процесс с наивысшим приоритетом.

Если очередь Ог рассортирована по приоритетам, то выбрать первый элемент просто. Если же такой сортировки нет (а при динамическом изменении приоритетов ее всегда нет), необходимо по истечении некоторого времени T проводить сортировку всей очереди Ог или его некоторой части. Здесь возможны различные модификации.

В стратегии HPF необходимо задать те параметры, которые лягут в основу формирования приоритета. Иногда выбирается первым самое короткое задание SJF (shortest job first). Здесь, как правило, используется ожидаемое время выполнения процесса, ибо точное время известно очень редко. При этом надо помнить, что некоторые пользователи занижают время выполнения процесса.

В SJF возможны также варианты с вытеснением. В этом случае надо следить, чтобы не слишком часто процессы вытесняли друг друга, ибо и на вытеснение нужно процессорное время. Кроме того, если до завершения процесса осталось мало времени, то его вытеснять не рекомендуется. Однако здесь (особенно если разрешено вытеснение) особое внимание должно быть обращено на выполнение частично обработанных процессов.

В задачах планирования необходимо предусмотреть обеспечение занятости внешних устройств. С этой целью процессам можно присваивать высокий приоритет в периоды интенсивного использования ими ввода-вывода.

Количество различных правил вычисления приоритета неограничено. Стратегия дает многим процессам хорошее обслуживание, тем не менее процессы с низким приоритетом могут ждать очень долго. Это во многих случаях неприемлемо, например, при работе в режиме реального времени.



Содержание раздела