Логический элемент


Управление процессорным временем. Модель планировщика и диспетчера процессорного времени. Приоритеты процессов


Download 384.49 Kb.
bet109/110
Sana18.06.2023
Hajmi384.49 Kb.
#1597764
1   ...   102   103   104   105   106   107   108   109   110
Bog'liq
Answers

3.36. Управление процессорным временем. Модель планировщика и диспетчера процессорного времени. Приоритеты процессов


3.36. КЕРУВАННЯ ПРОЦЕСОРНИМ ЧАСОМ. МОДЕЛЬ ПЛАНУВАЛЬНИКА ТА ДИСПЕТЧЕРА ПРОЦЕСОРНОГО ЧАСУ. ПРІОРИТЕТИ ПРОЦЕСІВ.
В общем случае планирование (на любом уровне) может быть представлена как система массового обслуживания (СМО). Применительно к планированию процессорного времени компоненты этой СМО могут быть интерпретированы следующим образом: заявкой является процесс, обслуживающим прибором - центральный процессор (ЦП), очередь заявок - это очередь готовых процессов. Процессы-заявки поступают в очередь, при освобождении ЦП один процесс выбирается из очереди и обслуживается на ЦП. Обслуживание может быть прервано по следующим причинам:
- выполнение процесса завершилось;
- процесс запросил выполнение операции, требующей ожидания
какого-либо другого ресурса;
- выполнение прервано системой.
Первые два случая с точки зрения СМО одинаковы: в любом случае процесс выходит из данной СМО. Если процесс не завершился, то после получения запрошенного ресурса процесс вновь поступит во входную очередь. В случае прерывания процесса по инициативе системы прерванный (вытесненный) процесс поступает во входную очередь сразу же. Порядок обслуживания входной очереди, очередность выбора из нее заявок на обслуживания и составляет дисциплину или
стратегию планирования. Для оценки эффективности функционирования данной СМО могут быть применены количественные показатели. Обозначим через t - процессорное время, необходимое процессу для выполнения, мы будем его называть длительностью процесса. Обозначим через T - общее время пребывания процесса в системе. Эту величину также называют иногда временем реакции процесса - интервал между моментом вводом процесса в систему и моментом получения результатов. Наряду с временем реакции могут быть полезны также и другие показатели. Потерянное время: M = T - t;
определяет время, в течение которого процесс находился в системе, но не выполнялся.
Отношение реактивности: R = t / T;
показывает долю процессорного времени (времени выполнения) или долю потерянного времени в общем времени реакции. Штрафное отношение: P = T / t;
показывает, во сколько раз общее время выполнения процесса превышает необходимое процессорное время.
Различают приоритеты:
- внешние - назначаемые администратором системы или пользователем в соответствии с классом пользователя и/или произведенной пользователем оплатой;
- статические - вычисляемые планировщиком при поступлении процесса в систему и не изменяемые впоследствии;
- динамические - перевычисляемые планировщиком периодически или/и при событиях, влияющих на планирование процессов;
- комплексные - динамически вычисляемые приоритеты, учитывающие внешний приоритет процесса, его статические характеристики, а также ход выполнения процесса, текущее состояние очереди готовых процессов и, возможно, состояние других системных ресурсов.
К ОС, обеспечивающим режим клиент/сервер, применяют дисциплины, отдающие предпочтение обменным процессам. Для таких ОС достаточно типичной можно считать такую макросхему определения приоритетов процессов в очереди к ЦП. Наивысший абсолютный приоритет имеют системные процессы, которые не могут вытесняться. Далее - системные процессы, которые могут быть вытеснены. Наконец, низший приоритет имеют пользовательские процессы. Пользовательские процессы в свою очередь могут делиться на классы. Типовое деление (например, OS/2) включает в себя три класса:
- с высоким приоритетом - процессы реального времени;
- с нормальным приоритетом - интерактивные процессы;
- с низким приоритетом - счетные (пакетные) процессы.
Внутри каждого класса предусматривается еще несколько градаций приоритета, которые могут назначаться пользователем. Наконец, ОС может формировать еще динамическую добавку к приоритету, зависящую от истории выполнения процесса, текущего состояния ресурсов и
т.Д. Эта добавка может повышать или снижать приоритет процесса внутри класса, но никогда не выводит процесс за пределы назначенного ему класса. Динамическая составляющая совершенно необходима для процессов класса с нормальным приоритетом (интерактивных), так как их поведение во время выполнения наиболее труднопредсказуемо. Процессы других классов ОС может планировать и по статическим приоритетам. Общие закономерности в динамическом вычислении приоритетов можно свести к следующим:
- приоритет процесса, долгое время находящегося в состоянии ожидания, повышается;
- приоритет процесса, часто выполняющего операции ввода-вывода, повышается;
- приоритет процесса, чаще получающего внешние сообщения и прерывания, повышается;
- если приоритет процесса не повышается, он убывает.

Download 384.49 Kb.

Do'stlaringiz bilan baham:
1   ...   102   103   104   105   106   107   108   109   110




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling