После получения кванта процесс устанавливается в конец очереди.



Пусть q – длительность кванта, n -число пользователей ( или потоков ).

Тогда длительность одного цикла обслуживания равна t = q * n.

 При k циклах на выполнение потока время обслуживания одного потока равна T = q*n*k.

Фактически потоку на обслуживание необходимо время T1= q*k

 В этом режиме происходит увеличение длительности обслуживания каждой заявки пропорционально числу пользователей.

При увеличении длительности кванта и числа пользователей длительность обслуживания одной заявки возрастает.

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

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

В общем случае кванты времени на сеанс обслуживания могут быть постоянные и переменные.

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

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

Поэтому таким потокам следует предоставлять привилегии. 

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

Планирование в системах реального времени

 

В таких системах должно выполняться главное требование – реакция в допустимые пределы времени.

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

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

Если они катастрофические, то системы называются hard – жесткие.

В них должны быть протестированы все критические моменты.

Иначе мягкие – soft.

В них возможно нарушение временных ограничений.

Системы реального времени могут быть – периодические и спорадические (с неизвестными временами появления запросов).

В ОС Windows NT, OS/2, Unix V – имеется приоритетный класс реального времени, но при этом не гарантируется соблюдение выполнения запроса в заданные временные ограничения.

Запросу лишь отдается предпочтение.

Примеры дисциплин обслуживания в современных ОС

Планировщик Unix System V Release 4

 

В этой ОС понятие потоков не используется и элементом многозадачности является процесс.

Соответственно планировщик работает с процессами и они являются элементами управления.

Дисциплина планирования базируется на понятиях:

Выделенные кванты времени.

Кванты для процессов могут быть различными по длительности.

Обычно это десятки миллисекунд.

Приоритеты.

Приоритеты могут меняться в случаях:

* процесс находится в очереди дольше некоторого фиксированного времени типа переменной MaxWait;

* процесс ожидает операции ввода – вывода и др.

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

Смена активного потока происходит, если:

* процесс завершился и покинул систему;

* произошла ошибка;

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

* исчерпан квант процессорного времени, выделенного процесс.

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

Чем больше процесс в очереди, тем больше времени ожидает процесс очередного кванта.

Все процессы делятся на 3 класса:

Реального времени.

Системные (ядра ОС).

Разделения времени.

При инсталляции могут быть включены новые классы приоритетов.

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

Созданный процесс наследует характеристики планирования родителя: класс приоритета и значение приоритета в классе.

Он может быть изменен только системным вызовом изменения класса.


Дата добавления: 2018-08-06; просмотров: 281; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!