- •Лекция 1. Состав и назначение и классификация операционной системы Введение
- •Понятие процесса и ресурса
- •Состав операционной системы
- •Классификация ос
- •Ос пакетной обработки
- •Ос оперативной обработки
- •Системы жёсткого реального времени не допускают задержек реакции системы, так как это может привести к:
- •Моделирование режима мультипрограммирования
- •Планирование процессов Понятия о планировании и диспетчеризации процессов
- •Создание процессов
- •Завершение процесса
- •Состояние процесса
- •Алгоритмы планирования
- •Методы планирования
- •Детерминированное планирование
- •Стохастическое планирование Последовательный выбор
- •Алгоритм одноуровневого циклического выбора
- •Алгоритм многоуровневого циклического выбора
- •Алгоритм многоуровневого планирования с учётом предварительных приоритетов работ.
- •Планирование на основе приоритетов
- •Обслуживание с абсолютными приоритетами
- •Синхронизация процессов
- •Цели и средства синхронизации процессов
- •Понятие системные вызовы. Критические секции
- •Синхронизация методом взаимных исключений
- •Метод блокирующей переменной
- •Блокирующей переменной с использованием системного вызова
- •Метод семафоров
- •Условная (барьерная) синхронизация
- •Тупиковые ситуации во взаимодействии процессов и методы их устранения
- •Управление памятью
- •Проблемы организации памяти мультипроцессорных вычислительных систем. Функции ос по управлению памятью.
- •Методы защиты памяти
- •Метод граничных ресурсов
- •Метод ключей защиты
- •Защита отдельных ячеек
- •Организация виртуальной памяти
- •Статическое и динамическое распределение памяти. Распределение памяти фиксированными разделами
- •Страничная организация виртуальной памяти
- •Сегментная и сегментно-страничная организация виртуальной памяти
- •Структура страничной таблицы
- •Методы уменьшения времени доступа к памяти
- •Обеспечение быстрого доступа к данным кэш-память
- •Ускорение формирования адреса. Буферы быстрого преобразования адреса
- •Алгоритмы замещения страниц в виртуальной памяти
- •В своем развитии осрв строились на основе следующих архитектур.[1]
Алгоритм одноуровневого циклического выбора
В универсальных системах, априорная информация о трудоемкости работ, как правило, отсутствует, поэтому в систему оперативной обработки (СОО) встраиваются средства, обеспечивающие выявление коротких и длинных работ непосредственно в ходе вычислительного процесса. При этом к коротким относят работы, трудоемкость которых меньше средней трудоемкости, определенной для всего множества работ, поступающих в систему. В противном случае работы относят к длинным.
Одноуровневый циклический метод осуществляется в ходе реализации вычислительного процесса. Если запуск работ по возрастанию => minсуммарное время выполнения. Поступающие в ВС работы устанавливаются в очередь, каждой работе представляется квант процессорного времени. Если работа за выделенный квант не выполняется, то она прерывается и перемещается в конец очереди. Если работа выполняется за выделенный квант, то она передаётся пользователю. Этот алгоритм квантования применяется, что бы короткие работы выходили первыми.

Рисунок - Модель одноуровневого циклического выбора
Недостаток заключается в том, что если будет выбран большой квант, то короткие работы не будут выходить первыми, а обрабатываться с большой задержкой, т.к. устанавливаются в очередь. Если будет выбран квант коротким, то будет много выделенного времени на обработку прерываний, которое ведёт к непроизводительности.
Применяют модифицирование:
Если в очереди нет готовых процессов, то выполняющейся работе предоставляется новые кванты.
Алгоритм циклического планирования работ (RR— сокращение от Round — Robin). Простейшее правило планирования работ в СОО, обеспечивающее выявление коротких работ и предоставление им первоочередности в обслуживании, задается алгоритмом циклического планирования, иначе называемым алгоритмом RRV Этот алгоритм реализуется в соответствии с рис. 5.19. Заявки на выполнение работ поступают с интенсивностью А в очередь О, откуда они выбираются и исполняются процессором Пр. Для обслуживания отдельной заявки отводится постоянный квант времени q, достаточный для выполнения нескольких тысяч операций. Если работа была выполнена за время q, то она покидает систему. В противном случае она вновь поступает в конец очереди и ожидает предоставления ей очередного кванта процессорного времени.
Алгоритм многоуровневого циклического выбора
Более эффективным является алгоритм многоуровневого циклического выбора. Для его реализации формируют несколько очередей, каждой очереди присваивают приоритет, уменьшающийся с номером очереди.

Рисунок - Модель многоуровневого циклического вызова
Новая работа поступает в очередь О1, имеющая наивысший приоритет. Задачам из этой очереди предоставляется самый короткий квант. Если работа из первой очереди не выполняется за выделенный квант, то она перемещается в конец очереди с низким приоритетом, но с большим значением кванта.
Выбор работ из очереди с низким приоритетом производится в том случае, когда отсутствует работа в очереди с высоким приоритетом. Таким образом, число прерываний для длинных работ уменьшается, одновременно сокращаются потери производительности процессора из-за переключения процессов.

Недостаток: если сразу расставить всё по очередям то короткие сразу выполнятся.
