Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВТ_4 часть.doc
Скачиваний:
10
Добавлен:
16.09.2019
Размер:
550.91 Кб
Скачать

Входные очереди программ разных классов в озу на дисках

Выходные очереди программ разных классов в озу на дисках

МП

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

Описания программ объединяются в пакет.

Обработка пакета программ организуется и управляется программами операционной системы (программой супервизор и др.).

Тексты программ и входные наборы данных вводятся программой системного ввода (перфокартный ввод, ЗУ на лентах или дисках).

Очереди программ, упорядоченные для каждого класса в соответствии с приоритетом программ, располагаются в ЗУ прямого доступа (ЗУ на дисках).

Программа Планировщик выбирает программы из очереди старшего класса, назначает ему периферийные устройства, выдаёт сообщение оператору об установке нужных томов (пакетов дисков, катушек с лентой) и загружает очередную программу.

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

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

Обработка этой программы будет прервана супервизором, если перейдёт в состояние готовности какая-либо программа более высокого приоритета.

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

Выходные данные выводятся программой системного вывода (перфокартный вывод, печатающее устройство, ЗУ на ленте).

10.7. Мультипрограммный режим работы МПС с разделением времени.

Группам программ, находящимся в ОП, может быть назначена обработка с квантованием времени, при которой супервизор выделяет программам один и тот же интервал (квант) времени работы процессора.

Квантованная обработка позволяет избежать монополизации процессора одной программой, что особенно важно при диалоговом режиме работы МПС.

Порядок распределения между программами ресурсов МПС устанавливается дисциплиной обслуживания.

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

Схема одноочередной системы имеет вид:

Очередь

МП

Обслуживание закончено

Вновь поступающие программы ставятся в конец очереди.

Обслуживание программы не закончено

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

Если за это время программа успеет завершиться, будет выдан результат, а МП приступит к обработке следующей из очереди программы.

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

Для сокращения потерь времени, связанных с переключением программ, и обеспечения приоритета для коротких программ используют дисциплину обслуживания с несколькими очередями:

Поток новых программ

Очередь 0

Обслуживание

закончено

Приоритет очереди

МП

убывает с возрастанием её

номера m (0 m  k).

Очередь 1

Вновь поступающая

программа ставится в ко-

нец очереди, имеющей

старший приоритет (m=0).

Очередь К

В такой системе сле-

дующей подлежит обслу-

Обслуживание программы не закончено

живанию программа из

начала очереди с номером m, если очереди с меньшими номерами (с более высоким приоритетом) пустые.

Если за выделенный квант времени обработка программы из очереди m не заканчивается, программа прерывается и переходит в конец очереди с номером m+1.

Выделяемый программе квант времени возрастает с увеличением номера очереди обычно по правилу: , где m – квант, выделяемый программе из m-й очереди;  - квант для программы из нулевой очереди.

Обычно  = 200-500 мс.

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

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

Через времяm эта программа дополучает недоданное.

Чтобы избежать недопустимо долгого ожидания для больших программ, приоритет делается зависящим от времени ожидания.

Если ожидание превысит некоторое установленное значение (например, 60 с), программа перейдёт в следующую очередь с меньшим номером.

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

59