Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОСиС.doc
Скачиваний:
5
Добавлен:
01.03.2025
Размер:
2.5 Mб
Скачать
  1. Уровни систем планирования.

    1. Двухуровневая система планирования.

    1. Трехуровневая система планирования.

  1. Планировщик процессов.

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

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

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

    1. Функции.

Планировщик процессов должен выполнять следующие функции:

      1. Регистрация информации о состоянии процессов.

      2. Решать, какому из процессов, когда и на сколь длительное время предоставлять процессор.

      3. Выделение процессоров процессам.

      4. Освобождение процессоров от использующих их процессов.

    1. . Учет информации о состоянии процессов.

Эту функцию выполняет регулировщик процессов.

Представляет информацию о каждом процессе в системе в виде отдельной управляющей таблицы, называемой блоком управления процессов(PCB). Эта таблица - единственная "осязаемая" составная часть процесса.

Примерная информация таблицы:

  • идентификатор процесса;

  • текущее состояние;

  • приоритет;

  • область сохранения регистров;

  • указатель цепочки (адрес следующего PCB в том же состоянии) и др.

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

Регулировщик вызывается всякий раз, когда меняется состояние ресурса.

Очередь ждущих процессов может состоять из подочередей, каждая из которых - цепочка PCB процессов, находящиеся в ожидании по одной и той же причине. Если процесс запрашивает уже занятое устройство, его PCB приписывается к очереди, связанной с этим устройством.

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

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

    1. Дисциплины обслуживания.

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

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

Длительность кванта может зависеть от одного из нижеперечисленных событий или их комбинации:

  • выполнение процесса завершено;

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

  • процессор потребовался для обслуживания процесса, имеющего более высокий приоритет;

  • завершился заранее выделенный процессу квант времени;

  • произошла ошибка.

Решение о выборе процесса на обслуживание принимается путем просмотра очереди готовых PCB в соответствии с принятой дисциплиной обслуживания.

Способы организации готовых PCB:

      1. При переводе процесса в состояние готовности (из состояний хранения, выполнения или ожидания), его PCB помещается в соответствующую приоритету процесса позицию очереди. Когда процессор освобождается, он переключается на обслуживание процесса, стоящего в очереди первым.

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

    1. Равномерное циклическое квантование.

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

    1. Приоритет по характеру использования предшествующего кванта.

Если процесс полностью использовал свой предшествующий квант времени, он помещается в конец очереди. Если он использовал только половину(например блокировка по ввод/вывод), он попадает в середину очереди ("справедливая").

Данная дисциплина хороша для обслуживания процессов с интенсивным вводом выводом.

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

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

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

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

    1. Предпочтительное обслуживание интерактивных процессов.

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

    1. . Автоматические приоритеты.

Ответственность за назначение процессам приоритетов возлагается на саму операционную систему:

  • ОС может повышать приоритеты коротких заданий;

  • автоматическое назначение приоритетов, приводящее к сбалансированной загрузке оборудования (совместное выполнение двух процессов: 1 интенсивно использует ввод/вывод; другой использует его в малой степени).

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

    1. Модель типа вертушки (круговорот) и ее варианта

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

В модели много уровневой вертушки дополнительно уменьшается время обслуживания коротких заданий. Она содержит n очередей ожидания F0,.....,Fn-1. С каждой очередью Fi связан квант Qi, величина которого растет с увеличением i. Задание из очереди Fi обрабатывается только в том случае, если все очереди с меньшими номерами i пусты. Когда квант времени израсходован на задание из очереди Fi, а соответствующее задание еще не окончено , оно помещается в очередь Fi+1, задания из очереди Fn-1 возвращаются в эту же очередь. Новые задания попадают в очередь F0.

    1. Диаграммы работы состояний процессов.

      1. Простой алгоритм обслуживания.

Различаются два типа состояния готовности: низкоприоритетная и высокоприоритетная.

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

  • выбор на обслуживание процесса из очереди высокоприоритетных готовых процессов.

  • если эта очередь пуста, выбрать процесс из очереди низкоприоритетных процессов.

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

      1. Альтернативный алгоритм.

Может использоваться в системах с разделением времени и страничной организацией памяти.

Состояние ожидания может быть трех видов:

  • блокировка по обмену с терминалами;

  • блокировка по обмену с накопителями;

  • блокировка по обмену с внешней страничной памятью.

Готовые процессы подразделяются на три группы:

  • низкоприоритетные процессы с преимущественным счетом;

  • высокоприоритетные процессы с преим. ввод/вывод;

  • среднеприоритеные процессы с преим. ввод/вывод.

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

Реализуются несколько частных дисциплин.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]