русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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

В общем  случае  планирование  (на  любом  уровне) может быть представлена как система массового обслуживания (СМО). Применительно к планированию процессорного времени компоненты этой СМО могут быть интерпретированы следующим  образом: заявкой является процесс,  обслуживающим  прибором - центральный процессор (ЦП), очередь заявок - это очередь готовых процессов. Процессы-заявки поступают  в очередь, при освобождении ЦП один процесс выбирается из очереди и обслуживается на ЦП.  Обслуживание может быть прервано по следующим причинам:

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

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

стратегию планирования. Для оценки  эффективности  функционирования  данной СМО могут быть применены количественные показатели.  Обозначим  через  t  - процессорное время, необходимое процессу для выполнения, мы будем его называть длительностью процесса.  Обозначим через T  -  общее время пребывания процесса в системе.  Эту величину также называют иногда временем реакции процесса - интервал между моментом вводом процесса в систему и моментом  получения  результатов.  Наряду  с временем реакции могут быть полезны также и другие показатели.     Потерянное время:     M = T - t;

определяет время, в течение которого процесс находился в системе, но не выполнялся.
Отношение реактивности:     R = t / T;
показывает долю процессорного времени  (времени  выполнения)  или долю потерянного времени в  общем времени реакции.     Штрафное отношение:     P = T / t;
показывает, во сколько раз общее время выполнения процесса превышает необходимое процессорное время.

Различают приоритеты:
- внешние - назначаемые администратором системы или пользователем в соответствии с классом пользователя  и/или  произведенной пользователем оплатой;
- статические -  вычисляемые  планировщиком  при  поступлении процесса в систему и не изменяемые впоследствии;
- динамические - перевычисляемые  планировщиком  периодически или/и при событиях, влияющих на планирование процессов;
- комплексные - динамически вычисляемые приоритеты, учитывающие внешний приоритет процесса, его статические характеристики, а также ход выполнения процесса,  текущее состояние очереди готовых процессов и, возможно, состояние других системных ресурсов.
К ОС,  обеспечивающим режим клиент/сервер, применяют  дисциплины, отдающие предпочтение обменным процессам. Для таких ОС достаточно типичной можно считать такую макросхему  определения  приоритетов процессов  в  очереди к ЦП.  Наивысший абсолютный приоритет имеют системные процессы, которые не могут вытесняться. Далее - системные процессы, которые могут быть вытеснены. Наконец, низший приоритет имеют пользовательские процессы.  Пользовательские процессы в свою очередь могут делиться на классы.  Типовое деление (например, OS/2) включает в себя три класса:

- с высоким приоритетом - процессы реального времени;
- с нормальным приоритетом - интерактивные процессы;
- с низким приоритетом - счетные (пакетные) процессы.

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

- приоритет процесса,  долгое время находящегося в  состоянии       ожидания, повышается;
- приоритет процесса, часто выполняющего операции ввода-вывода, повышается;
- приоритет  процесса,  чаще  получающего внешние сообщения и  прерывания, повышается;
- если приоритет процесса не повышается, он убывает.

Просмотров: 6246

Вернуться в оглавление:Шпаргалки по компьютеру




Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Полезен материал? Поделись:

Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.