24513

Алгоритмы планирования, основанные на квантовании, приоритетах, смешанные алгоритмы

Доклад

Информатика, кибернетика и программирование

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

Русский

2013-08-09

92.27 KB

44 чел.

Вопрос 18. Алгоритмы планирования, основанные на квантовании, приоритетах, смешанные алгоритмы.

§4.2.5.Алгоритмы планирования, основанные на квантовании.

В основе многих вытесняющих алгоритмов планирования лежит концепция квантования. В соответствии с этой концепцией каждому потоку поочередно для выполнения предоставляется ограниченный непрерывный период процессорного времени – квант. Смена активного потока происходит, в следующих случаях:

- поток завершился и покинул систему;

- произошла ошибка;

- поток перешел в состояние ожидания;

- исчерпан квант процессорного времени, отведенный данному потоку.

Поток, который исчерпал свой квант, переводится в состояние «готовность» и ожидает, когда ему будет предоставлен новый квант процессорного времени, а на выполнение в соответствии с определенным правилом выбирается новый поток из очереди готовых. Таким образом, ни один поток не занимает процессор надолго, поэтому квантование широко используется в системах разделения времени. Граф состояний потока для алгоритма диспетчеризации, основанного на квантовании, изображен на рис. 4.5.

Рис. 4.5. Граф состояний потока в системах с квантованием

Многозадачные ОС теряют некоторое количество процессорного времени для выполнения вспомогательных работ во время переключения контекстов задач. Затраты на эти вспомогательные действия зависят от величины кванта времени – чем больше квант, тем меньше суммарные накладные расходы, связанные с переключением потоков.

В зависимости от используемого алгоритма планирования, кванты, выделяемые потокам, могут быть одинаковыми для всех потоков или различными. Кванты, выделяемые одному потоку, могут быть фиксированной величины, а могут и изменяться в разные периоды жизни потока. Например, первоначально каждому потоку назначается достаточно большой квант, а величина каждого следующего кванта уменьшается до некоторой заранее заданной величины. В таком случае короткие задачи успевают выполняться в течение первого кванта, а длительные вычисления будут проводиться в фоновом режиме. Если следующий квант, выделяемый потоку, больше предыдущего, то это позволяет уменьшить накладные расходы времени на переключение задач в том случае, когда выполняется одновременно сразу несколько длительных задач.

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

Алгоритмы планирования, основанные на приоритетах.

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

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

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

Например, в операционной системе Windows NT определено 32 уровня приоритетов и два класса потоков – потоки реального времени и потоки с переменными приоритетами. Диапазон от 1 до 15 отведен для потоков с переменными приоритетами, а от 16 до 31 – для потоков реального времени (приоритет 0 зарезервирован для системных целей).

Существует две разновидности приоритетного обслуживания:

- обслуживание с относительными приоритетами;

- обслуживание с абсолютными приоритетами.

В системах с относительными и абсолютными приоритетами выбор потока на выполнение из очереди готовых осуществляется одинаково: выбирается поток, имеющий наивысший приоритет. По-разному определяется момент смены активного потока.

В системах с относительными приоритетами активный поток выполняется до тех пор, пока он сам не покинет процессор при наступлении одного из следующих событий: процесс завершился, ошибка, переход в состояние «ожидание». Если ни одно из перечисленных событий не наступило, активный поток выполняется от начала до конца (квантование отсутствует).

В системах с абсолютными приоритетами, в отличие от предыдущего случая, выполнение активного потока принудительно прерывается операционной системой, если в очереди готовых потоков появился поток, приоритет которого выше приоритета активного потока. При этом прерванный поток переходит в состояние «готовность».

Графы состояний потока для алгоритмов с относительными и абсолютными приоритетами показаны на рис. 4.6.

 а)

б)

Рис. 4.6. Графы состояний потока в системах

с относительными (а) и абсолютными (б) приоритетами

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

В системах с абсолютными приоритетами время ожидания потока с самым высоким приоритетом в очередях может сведено к минимуму. Это делает планирование на основе абсолютных приоритетов подходящим для систем управления объектами, в которых важна быстрая реакция на событие.

Смешанные алгоритмы планирования.

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

Например, в Windows NT приоритеты потоков могут динамически меняться системой в определенном диапазоне относительно заданного значения.


 

А также другие работы, которые могут Вас заинтересовать

83057. Понятие «общение». Структура и средства общения 35.92 KB
  Залог успеха любых начинаний делового человека какую бы задачу он ни решал создание климата делового сотрудничества доверия и уважения. Общение сложный многоплановый процесс установления и развития контактов между людьми порождаемый потребностями совместной деятельности и включающей...
83058. Организационная структура компании ООО «Лаборатории Весслинг» 110 KB
  Разумно созданная структура системы управления определяет ее эффективность, так как обеспечивает устойчивость связей между множеством составляющих компонентов объекта управления и обеспечивает целостность системы.
83059. Гравитация. Гравитационное поле 162.95 KB
  Из-за глобального характера гравитация ответственна и за такие крупномасштабные эффекты как структура галактик черные дыры и расширение Вселенной и за элементарные астрономические явления орбиты планет и за простое притяжение к поверхности Земли и падения тел.
83060. Разработка программы для работы с матрицами 71.47 KB
  В данной работе путем одного из самых простых методов шифрования – шифровкой с использованием кодового слова, был зашифрован и ,затем расшифрован произвольный текст. Цель работы: Зашифровать и расшифровать текст с использованием кодового слова.
83061. Экономическая эффективность развития хлебобулочного производства в ОАО «Волжский пекарь» 221.5 KB
  Все эти факторы ведут к увеличению себестоимости выпускаемой продукции и хлебопекарные предприятия вынуждены повышать цены на хлеб и хлебобулочные изделия. Страдает также и качество продукции так как многие предприятия для увеличения своей прибыли от продажи продукции или используют более дешевое но низкого...
83062. Разработка технологического процесса восстановления детали (маховика № 53-10050115) 630.06 KB
  Перспективность авторемонтного производства обусловливается объективными постоянно действующими факторами. Современные конструктивные, технологические и экономические основы, на которых базируются конструирование, производство и эксплуатация автомобилей, предопределяют неодинаковость...
83063. Оператор ЭВМ 89.5 KB
  Оператора ЭВМ оператора ПК заключается в том что он вводит информацию в компьютер и обрабатывает и передаёт её в локальных сетях К Когда-то давно ещё когда никто не знал что такое компьютер для проведения больших вычислений собиралась не одна сотня учёных которые дни и ночи на напролёт сидели и умножали возводили в степень извлекали корень. Это оператор ЭВМ со своим на надёжным другом компьютером. Мастер по обработке цифровой информации Оператор ЭВМ...
83064. Роль зрелища в римской культуре 172 KB
  В связи с этим цель работы – на основе анализа историко-теоретического материала выявить особенности зрелищ в Древнем Риме в рамках праздничного действа. В рамках поставленной цели предусмотрено решение следующих задач: Охарактеризовать особенности древнеримской цивилизации.
83065. Разработка АИС «Работа отдела кадров» 6.6 MB
  Цель разработки – облегчить работу сотрудникам отдела кадров, уменьшить время затрачиваемое на составление различных отчётов. В процессе работы построена функциональная и инфологическая модель предметной области с использованием CASE – средств, разработана структура база данных.