Файл: Дроздов Е.А. Многопрограммные цифровые вычислительные машины.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.04.2024

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

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

вания и разделения информационных слов; оперативное ЗУ в состав селекторного канала не включается. Обмен информацией между каналом и оперативной памятью машины осуществляется по кодовым шинам чисел КШЧ и кодовым шинам адресов КША. Обмен информацией между каналом и внешними ЗУ производит­ ся по шинам прямой передачи ШПП и шинам обратной передачи ШОП; системы ШПП и ШОП обычно рассчитываются на пере­ дачу информации по байтам.

кшч

Рис. 12.4. Общая схема селекторного канала

Непосредственная организация выполнения заданной команды ввода — вывода в селекторном канале, как и в мультиплексном, осуществляется в соответствии с управляющим словом канала УСК. Поэтому в операционном устройстве канала центральное место занимает комплексный регистр УСК. УСК в комплексный регистр вводится через группу вентилей Вь если формат УСК пре­ вышает предельный формат машинных слов, то группа венти­ лей В] разбивается на части, отвечающие частям УСК, передаваемым

раздельно

по кодовым шинам чисел КШЧ.

При разделе­

нии В! на

части соответственно увеличивается

количество управ­

384

ляющих сигналов, по которым УСК вводится в комплексный регистр канала.

Код команды канала КК и код признаков КП выдаются из РгУСК непосредственно в устройство управления канала, где ис­ пользуются для формирования необходимых наборов управляю­ щих сигналов УС. К двум младшим разрядам счетчика Сч1, кото­ рые выполняют функции счетчика байтов в передаваемом полно­ разрядном слове, подключен дешифратор байтов ДшБ; сигналы с выхода этого дешифратора подаются в УУК.. В старших разрядах Сч1 формируется адрес очередного информационного слова, вы­ бираемого из ОЗУ машины или записываемого в это ОЗУ. Вы­ дача адреса в КША осуществляется через группу вентилей В2; очевидно, что УС2 должен подаваться с частотой, в четыре раза меньшей частоты выработки управляющего сигнала УС5, если ин­ формационное слово состоит из четырех байтов. Управляющие сигналы УСб, подаваемые на вход Сч2, формируются одновремен­ но с УС2. При подаче каждого УС6 содержимое Сч2 уменьшается на единицу; поэтому, когда будет передано заданное количество слов, определяемое кодом количества слов ККС, этот счетчик уста­ навливается в нулевое состояние. Схема анализа СхА при уста­ новке Сч2 в нулевое состояние выдает сигнал в УУК о заверше­ нии передачи заданного количества слов. По этому сигналу УУК прекращает формирование наборов управляющих сигналов и по­ сылает в УУ машины финишный сигнал, т. е. сообщение о завер­ шении работ по данному УСК.

Регистр РгЗ служит для формирования информационных слов, передаваемых из внешних ЗУ в оперативную память машины, а также для разбиения слов на байты при обратной передаче ин­ формации. С кодовыми шинами чисел этот регистр связан через полноразрядные группы входных В3 и выходных В4 вентилей. Прием байтов, передаваемых из внешних ЗУ по ШПП, осуще­ ствляется посредством 8-разрядных групп вентилей В\, В\

и т. д.; если полноразрядное информационное слово отвечает че­

тырем байтам, то к ШПП подключается четыре группы

вентилей

(рис. 12.4). Четыре группы вентилей В 2,1 Щ, В\, В*

обеспечи­

вают разделение слова, передаваемого из ОЗУ машины в выбран­ ное внешнее ЗУ, на байты; через эти группы вентилей регистр РгЗ связан с шинами обратной передачи ШОП.

Устройство управления канала представляет собой преобразо­ ватель первичной командной информации, задаваемой кодами команд и признаков, во вторичную командную информацию, кото­ рая выражается соответствующими наборами управляющих сиг­ налов. Из устройства управления машины УУК. получает код опе­ рации ввода — вывода КОпВВ, а также стартовый управляющий сигнал УСС. Код команды канала и код признаков поступают в УУК из Рг1 и Рг2 комплексного регистра управляющего слова. Сигналы номеров байтов, вырабатываемые в процессе формиро­ вания информационных слов, а также при их разделении на байты

385


в РгЗ, подаются в устройство управления канала непосредст­ венно с выходов ДшБ. По финишному сигналу от схемы анализа УУК вырабатывает общий финишный сигнал, передаваемый в УУ машины.

Рассмотрим работу селекторного канала по выполнению опе­ рации ввода — вывода, код которой совместно с номером внеш­ него ЗУ поступает в УУК из устройства управления машины. По заданному номеру УУК обеспечивает подготовку соответствую­ щего внешнего ЗУ к работе, посылая командную информацию по цепям, не показанным на рис. 12.4. Вся работа канала по реали­ зации заданной операции начинается с поступлением в УУК стар­ тового управляющего сигнала. На начальном этапе кроме подго­ товки к работе внешнего ЗУ осуществляется выборка управляю­ щего слова канала из оперативной памяти машины и размещение

его в РгУСК.

для выполнения операция

выдачи группы

слов

Пусть задана

из ОЗУ машины

в некоторое внешнее ЗУ,

а управляющее

слово

канала в качестве КА содержит код 110101000000, а в качестве ККС — код 100000000. Это означает, что в данном сеансе связи с заданным внешним ЗУ в это устройство необходимо передать 256 слов, располагающихся в ячейках ОЗУ, начиная с ячейки, имеющей восьмеричный номер 6500; считается, что каждое инфор­ мационное слово разделяется на четыре байта. Код адреса КА размещается в старших разрядах Сч1, а код количества слов ККС — в счетчике Сч2.

После приема управляющего слова канала коды КК и КП пе­ редаются из Рг1 и Рг2 соответственно в УУК. Этим завершается предварительный этап выполнения операции вывода из ОЗУ ма­ шины в заданное внешнее ЗУ группы машинных слов. Собственно передача этих слов начинается с момента выработки управляю­ щего сигнала УС2, по которому производится выдача из счетчика Сч1 адреса первого машинного (информационного) слова в ОЗУ машины. Далее вырабатывается УСз, обеспечивающий ввод в ре­ гистр РгЗ первого машинного слова, выбранного из ОЗУ машины. Одновременно с УС3 вырабатывается управляющий сигнал УСб, подача которого на вход Сч2 вызывает уменьшение содержимого этого счетчика на единицу; очевидно, что после выборки первого слова из ОЗУ машины в Сч2 будет содержаться код 11111111.

Принятое в РгЗ информационное слово должно выдаваться в шины обратной передачи ШОП по байтам. Это обеспечивается последовательной выработкой управляющих сигналов УС^ УС^(

УС^ и УСф Управляющий сигнал УС^ вырабатывается сразу

же вслед за УС3, когда два младших разряда Сч1 содержат нули и сигнал кода единицы поступает в устройство управления канала с первого выхода дешифратора байтов. Практически одновремен­ но с формированием УС:2 на вход Сч1 посылается управляющий

сигнал У С5, устанавливающий в двух мл'адших разрядах этого счетчика код 01. В соответствии с этим кодом устройство управ­

386


ления канала формирует управляющий сигнал УС|; на вход Сч 1

посылается очередной УС5 . На ШОП выдается второй байт ин­ формационного слова, а в двух младших разрядах Сч 1 устанав­ ливается код 10 и т. д. После выдачи четвертого байта на ШОП в двух младших разрядах Сч1 устанавливается код 00, а содер­ жимое основных старших разрядов этого счетчика увеличивается на единицу. На этом заканчивается первый цикл работы канала, отвечающий передаче из ОЗУ машины во внешнее ЗУ первого ин­ формационного слова.

Очередной цикл работы канала, как и первый, начинается с выработки управляющего сигнала УСг, по которому очередной адрес из Сч1 передается в ОЗУ машины. В рассматриваемом примере второй цикл работы канала начинается с отсылки в ОЗУ машины восьмеричного адреса 6501, так как в конце первого цикла в основной части Сч1 фиксируется двоичный код 110101000001. Завершается каждый цикл выработкой управляю­ щих сигналов УС| и УС5 . В начале последнего цикла работы

канала (для рассматриваемого примера — в начале 256-го цикла) счетчик Сч2 устанавливается в нулевое состояние, и схема анализа СхА посылает в устройство управления канала финишный сигнал, который может рассматриваться как предварительный. Схемы УУК продолжают выработку управляющих сигналов и после вы­ дачи на группу вентилей В* сигнала УС^ формируют резуль­

тирующий финишный сигнал, посылаемый в устройство управле­ ния машины.

Работа канала при выполнении операции по передаче инфор­ мации из заданного внешнего ЗУ в ОЗУ машины также осуще­ ствляется по циклам, отвечающим передаче отдельных информа­ ционных слов. Но каждый цикл начинается с выработки последо­ вательности управляющих сигналов УС}, УС}, УС}, УС}, по

которым в РгЗ формируется полное информационное слово. Да­ лее одновременно вырабатываются УСг, У С 4 и УСв, что обеспечи­ вает запись принятого из внешнего ЗУ слова в требуемую ячейку ОЗУ машины и уменьшение содержимого Сч2 на единицу. В конце каждого цикла вырабатывается четвертый, считая с начала цик­ ла, сигнал У С 5 , что позволяет сформировать в Сч1 адрес, по кото­ рому в очередном цикле в ОЗУ машины записывается следующее информационное слово.

§12.4. Порядок обслуживания абонентов

Впроцессе работы ЦВМ в режиме разделения времени обслу* живаются различные группы абонентов, причем некоторым из них может предоставляться определенное преимущество при установ­ лении очередности удовлетворения одновременно поступающих за­ просов. Это достигается введением системы приоритетов. Наивыс­ ший приоритет присваивается тем задачам (и соответствующим

абонентам), которые должны решаться в первую очередь.

387


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

обслуживать срочные требования (запросы) и выполнять соответствующие программы абонентов в кратчайшее время;

обслуживать требования низшего приоритета в приемле­ мые для абонентов сроки (во всяком случае в такие сроки, которые бы не дали повода абонентам отказаться от услуг си­ стемы) ;

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

уменьшить среднее время реакции СРВ и среднее число

требований, ожидающих обслуживания;

реализации выбран­

— обеспечить

относительную

простоту

ного алгоритма

определения

очередности

обслуживания або­

нентов.

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

Разработка оптимального алгоритма диспетчирования — слож­ ная задача исследования операций, требующая для своего ре­ шения привлечения методов математической статистики, теории очередей, а также учета ряда соображений инженерного харак­ тера. Качество такого алгоритма оценивается обычно с помощью стоимостной функции, или функции штрафа за ожидание резуль­ татов вычислений.

В используемых в настоящее время СРВ нашли применение круговое (циклическое) и приоритетное обслуживание.

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

388


дый абонент по очереди получает одинаковый квант времени. Если за время одного кванта программа i-ro абонента не выполняется, ее прерывают и переходят к выполнению программы очередного абонента. При этом программа /-го абонента устанавливается в конец очереди. Очередь обычно формируется в порядке поступ­

ления требований, т. е. по принципу «первый

пришел — первый

обслужен». Стратегия кругового обслуживания

применяется в слу­

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

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

Можно выделить следующие разновидности приоритетного об­ служивания:

приоритетное обслуживание по принципу «чем короче про­ грамма, тем выше ее приоритет»; очередность обслуживания уста­ навливается в порядке возрастания х0г (т0г — время на обслужи­ вание требования t-rо абонента без учета потерь времени на ожи­ дание обслуживания в очереди и на прерывания при выполнении соответствующей рабочей программы), т. е. в первую очередь вы­ полняется наиболее «короткая» программа, требующая наимень­ ший объем вычислений; если априорно распределение объема вычислений не известно, могут быть введены так называемые динамические приоритеты, которые присваиваются программам або­ нентов на основании предыдущих оценок программ, произведен­ ных системой в процессе ее работы; приоритетное обслуживание по указанному принципу применяется в случае, когда стоимость ожидания обслуживания для всех абонентов одинакова;

приоритетное обслуживание по так называемому правилу т/С в порядке возрастания отношения -toi/Ci, где через Сгобозна­ чена величина, определяющая стоимость ожидания обслуживания требования /-го абонента, отнесенная к единице времени;

приоритетное обслуживание по принципу «чем важнее тре­ бование, тем выше его приоритет», т. е. здесь при установлении очередности обслуживания абонентов вообще не принимается во внимание распределение объема вычислительной работы между реализуемыми программами, а учитывается степень важности и

срочности требований абонентов.

При использовании приоритетного обслуживания любой раз­ новидности не обязательно устанавливается только одна очередь обслуживания активных абонентов. Обычно активные абоненты по тому или иному признаку разбиваются на несколько групп, каж­ дой из которых присваивается свой уровень приоритета. Каж­ дому уровню приоритета соответствует своя очередь, упорядочен­ ная в порядке поступления требований этого уровня. Приоритет требований убывает с увеличением номера уровня. Требование, которое должно обслуживаться следующим, выбирается из непу­ стой очереди требований наивысшего приоритета.

3R9