Операционные системы. Курс лекций




Типы планирования процессора. - часть 2


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

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

Другой тип планирования – статический. Может быть использован в специализированных системах, в которых весь набор одновременно выполняемых задач определен заранее (в системах реального времени).

Планировщик называется статическим, если принимает решение о планировании не во время работы системы, а заранее (предварительный анализ).

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

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

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

Диспетчеризация сводиться к следующему:

1) Сохранение контекста текущего потока, который требуется сменить.

2) Загрузка контекста нового потока, выбранного в результате планирования.

3) Запуск нового потока на выполнение.

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

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

1) Использование процессорного времени. В реальных системах этот показатель колеблется от 40 до 90%.

2) Время оборота. Для некоторых процессов важным критерием является полное время выполнения. Это время включает в себя время ожидания во входной очереди, время ожидания в очереди готовых процессов, время ожидания в очередях к оборудованию, время ввода-вывода и время выполнения на процессоре.

3) Время ожидания. Это суммарное время нахождения процесса в очереди готовых процессов.

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




Содержание  Назад  Вперед