Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kratko.docx
Скачиваний:
53
Добавлен:
01.04.2022
Размер:
2.04 Mб
Скачать

19. Алгоритмы планирования в интерактивных ос: циклическое, приоритетное, гарантированное, лотерейное, справедливое планирование.

Критерий эффективности - удобство работы пользователя.

Алгоритмы планирования:

1.Циклическое планирование (квантование)

Каждому процессу назначается одинаковый квант времени.

Процесс выполняет поток инструкций -> квант времени истекает -> поток вытесняется, перемещается в конец очереди ->поступает другой поток, следующий после него, получив квант времени.

+Простота

+Справедливость

-Слишком малый квант времени -> частому переключению процессов и снижению производительности, но с другой стороны повышает интерактивность;

-Слишком большой квант -> к увеличению времени ответа на интерактивный запрос.

2.Гарантированное планирование

В системе с n-процессами -> каждому выделяется 1/n времени

Суть алгоритма:

  1. Отслеживается затраченное процессорное время потоков с момента создания

  2. Затем вычисляют отношение времени(полученного процессом / на которое он имел право)

  3. На выполнение выбирается процесс с наименьшим отношением времени,пока соотношение не превысит соотношение его ближайшего конкурента.

3.Лотерейное планирование

Основная идея:

  1. Раздача процессам лотерейных билетов на доступ к различным ресурсам

  2. Планировщик в случайном порядке выбирается лотерейный билет, и ресурс отдается процессу, обладающему этим билетом.

4.Справедливое планирование

  1. Каждому пользователю, а не процессу, гарантированно распределяется некоторая доля процессорного времени и планировщик выбирает процессы, соблюдая это распределение.

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

5.Приоритетное планирование

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

  2. Чтобы предотвратить бесконечное выполнение процесса - снижается уровень приоритета с каждым прерыванием по таймеру.

20. Алгоритм планирования Windows nt.

Алгоритм планирования потоков в Windows NT объединяет в себе обе базовых концепции - квантование и приоритеты. Поток освобождает процессор, если:

  • блокируется, уходя в состояние ожидания;

  • завершается;

  • исчерпан квант;

  • в очереди готовых появляется более приоритетный поток.

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

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

Соседние файлы в предмете Операционные системы