После получения кванта процесс устанавливается в конец очереди.
Пусть 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; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!