Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Дроздов Е.А. Основы построения и функционирования вычислительных систем

.pdf
Скачиваний:
15
Добавлен:
25.10.2023
Размер:
14.65 Mб
Скачать

T0(-, т. е. в первую очередь выполняется наиболее «корот­ кая» программа, требующая наименьшего объема вычис­ лений. Если априорно распределение объема вычислений не известно, могут быть введены так называемые дина­ мические приоритеты, которые присваиваются програм­ мам абонентов на основании предыдущих оценок про' грамм, произведенных системой в процессе ее работы. Приоритетное обслуживание по указанному принципу применяется в случае, когда стоимость ожидания обслу­ живания для всех абонентов одинакова.

2.Приоритетное обслуживание по правилу т/с, в по­ рядке возрастания отношения Хщ/С{.

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

живания характерна главным образом для СРВ воен­ ного назначения.

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

Приоритетное обслуживание может осуществляться либо без прерывания кванта времени, либо с прерывани­

ем. При обслуживании без

прерывания

кванта переход

к обслуживанию очередного

требования

осуществляется

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

При обслуживании с прерыванием кванта в любой момент времени осуществляется 'выполнение программы, принадлежащей очереди с наивысшим приоритетом,

130

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

 

Рассмотрим конкретные примеры организации оче­

редности обслуживания

требований (программ), приме­

няемые в существующих СРВ [Л. 55, 56].

 

 

Организация очередей

в соответствии с

алгоритмом

FB

jv

( F B начальные

буквы английского

словосочета­

 

ния Foreground Background). Алгоритм разработан при­

менительно

к однопроцессорной

СРВ. Существо его за­

ключается

в следующем. Из программ, имеющихся в си­

стеме, организуется ряд очереден, которым

присваива­

ются номера от 1 до Л'. Вновь прибывающие

требования

на обслуживание (на выполнение

программ) поступают

в конец очереди № 1. Выполнение

программ

производит­

ся в такой

последовательности.

Сначала

выполняется

программа,

стоящая первой в

очереди

№ 1. Ей предо­

ставляется

квант времени тк .в .

Если за

время т к . в вы­

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

вершенная программа

отправляется в конец

очереди

№ 2

и т. д. Так продолжается до тех пор, пока

в

оче­

реди

№ 1 не останется

ни одной программы. Затем

та­

ким же образом производится выполнение программ из очереди № 2 и т. д.

Первая программа из j'-й очереди поступает на вы­ полнение только в случае, когда нет очередей с номера­

ми і1, і—2,...,2,

1. Программы

из последней,

N-оче-

реди выполняются без прерываний

по принципу

«первая

поступила — первая обслужена».

 

 

 

 

K +

Организация

очередей

в соответствии с

 

алгоритмом

 

a

',

представляющим

собой

сочетание

кругового

K + FB

 

(циклического)

алгоритма и алгоритма FBN.

Алгоритм

 

FBjv

использовался в системе

с разделением

време­

ни,

построенной

на базе ЦВМ A N / F S Q - 3 2

фирмы IBM

(США). В соответствии с этим алгоритмом

из программ,

находящихся в системе, образуются три очереди, а вновь

9* 131

прибывающие программы

поступают

в конец очереди

№ 1. Из первой очереди

программы

выбираются для

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

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

одного

до шести квантов времени (здесь

также тк .в =

= 600

мсек). Незавершенные программы

отправляются

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

ся до 20 квантов

по 600

мсек. После окончания

каждого

кванта времени

выполнение программ из очередей № 2

и 3 может быть

прервано, если за это время появились

программы в очереди № 1.

 

Выполнение

в СРВ

программ абонентов по

частям

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

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

132

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

Можно добиться уменьшения значений величин т 0 і з а счет сокращения простоев процессора при обмене инфор­ мацией между ступенями памяти СРВ путем регули­ ровки величины кванта времени. При уменьшении числа требований величина кванта увеличивается, следова­ тельно, уменьшается количество непроизводительных пе­ редач информации и сокращается время на обслужива­ ние требований.

3-4. СТРУКТУРЫ СИСТЕМ С Р А З Д Е Л Е Н И Е М ВРЕМЕНИ

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

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

Как уже отмечалось (см. § 3-1), в зависимости от организации связи периферийных устройств с ООП мультиплексные и селекторные каналы СРВ бывают с прямым доступом к ООП и с косвенным доступом (че-

133

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

Структура СРВ может быть тон или иной в зависи­ мости от организации симплексной или мультиплексной связи между терминалами и центральными процессора­ ми системы. Такие связи характерны для многопроцесcqpHbix СРВ с иерархической структурой.

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

Преобладающими могут быть такие режимы эксплуа­ тации: режим пакетной обработки, режим «запрос — от­ вет», разговорный режим (диалог), универсальный ре­ жим.

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

В режиме «запрос — ответ» система постоянно заня­ та пакетной обработкой задач. Некоторое число абонен­ тов через внешние пульты имеют прямой доступ к ЦВМ системы. Они могут посылать в кодированной форме за­ просы, каждому из которых соответствует своя, заранее составленная отвечающая программа. С получением за­ проса система настраивается на выполнение соответст­ вующей отвечающей программы и выдачу ответа або­ ненту. Набор допустимых запросов ограничен, поэтому такой режим применяется для решения таких задач, как

резервирование

мест, выдача

справок и т. д.

 

В разговорном

режиме

число абонентов,

имеющих

прямой доступ

к

машине или центральному

процессору

системы, ограничен. В их распоряжение предоставляется один язык программирования. При работе в этом режиме программы абонентов постоянно хранятся в ООП. В раз­

говорном режиме

центральный процессор играет

роль

либо активного партнера (в случае

программирован­

ного

обучения, реализации игровых

моделей и

т. д.),

либо

посредника

во взаимодействии

абонентов

друг

с другом.

134

Универсальный режим работы СРВ содержит в себе аспекты всех рассмотренных режимов. В СРВ, работаю­ щих в таком режиме, имеется разветвленная сеть внеш­

них пультов. Абоненты

имеют непосредственный

доступ

к

центральному

процессору,

пользуются набором

своих

и

общих программ. При отсутствии запросов на

обслу-

 

 

.1

 

 

 

 

ООП

11]

БЗУ

ВЗУ

 

 

 

1

 

 

 

Рис. 3-1. Однопроцессорная СРЕ

живание от абонентов система решает фоновые задачи (программы этих задач хранятся во вторичной .памяти) в режиме пакетной обработки.

Широкое распространение получили СРВ, позволяю­ щие реализовать именно универсальный режим работы, поэтому только такие системы рассматриваются в на­ стоящей книге.

На рис. 3-1 приведена типичная структура однопро­ цессорной СРВ. На рисунке приняты следующие обозна­ чения: ООП— основная оперативная память, БЗУ — бу-

135

ферное запоминающее устройство, ВЗУ— внешнее запо­

минающее

устройство,

МК— мультиплексный канал,

CK — селекторный канал, Т — терминалы, УУ — устрой­

ство управления

терминальной аппаратурой.

Память системы разделяется на первичную ООП и

вторичную

БЗУ

и ВЗУ.

Первичная память в настоящее

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

С помощью ООП осуществляется взаимная связь между компонентами аппаратурной и программной ча­ стей СРВ.

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

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

В качестве терминалов, кроме обычной пишущей ма­ шинки, могут использоваться: 1) для ввода информа­ ции'— телетайпы, буквенно-цифровая клавиатура, опти­ ческие читающие устройства, устройства ввода графиче­

ской информации,

устройства

ввода

с голоса

и т. д.;

2) для вывода — печатающие

устройства, перфорацион­

ные устройства,

электроннолучевые

трубки,

графопо­

строители, устройства звукового вывода.

 

136

Основные требования к терминальной аппаратуре: удобство и простота в эксплуатации, дешевизна, доста­

точное быстродействие. С точки зрения

абонента

устрой­

ства ввода-вывода должны быть идентичными

(абонент

пишет свои программы без ориентации

на определенные

типы этих устройств).

 

 

 

 

Устройства управления терминалов выполняют сле­

дующие функции: выбор терминала

из

группы

термина-

 

 

 

 

 

ооп

 

 

Модуль 1

Модуль

2

Модуль 3

 

 

 

 

 

 

._J

 

 

Центральный

Центральный

 

 

процессор

процессор

 

 

 

Коммутатор

каналов

 

 

*

*

-

 

 

*

 

 

 

 

 

 

мн

-

СИ

CK

 

мк

 

 

 

 

 

 

Уі/

 

 

НМДЫ

w

Ні/\**\НМБ

 

УУМНМД

УУУУ

Т И.

id т

Рис. 3-2. Многопроцессорная

СРВ.

137

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

Выполнение программ абонентов осуществляется цен­ тральным процессором во взаимодействии с ООП.

ООП

«г

ктй

Рис. 3-3. Иерархическая структура многопроцессорной СРВ с сим­ плексными связями.

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

врежиме абонента и в режиме системы.

Воднопроцессорной СРВ обычно имеется один муль­ типлексный канал и несколько селекторных. Подключе­ ние селекторных каналов к ООП (для каналов с прямым доступом) или к процессору (для каналов с косвенным доступом) производится с помощью коммутатора кана-

138

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

Один из возможных вариантов структуры многопро­ цессорной СРВ приведен на рис. 3-2. Здесь в качестве терминальной аппаратуры селекторных каналов исполь­ зуются накопители на магнитных барабанах НМБ и ди­ сках НМД.

I

 

 

ООП

1

 

 

 

1

 

Модуль 1

Модуль!

Модуль 3

1

 

1

 

 

 

 

 

 

 

 

_J1

-

V

 

7 -

 

[7^1 |7л£] ! MKs\

Рис. 3-4. Иерархическая структура многопроцессорной СРВ с муль­ типлексными связями.

 

Иерархические

структуры

СРВ

изображены

на

рис. 3-3 и 3-4,

где обозначено:

П\,

Я 2 . . . — процессоры;

МКи МКг...

— мультиплексные

каналы; Кі, Кг--- —

коммутаторы

каналов;

ЛТь КТ2...

— коммутаторы

тер­

миналов. СРВ

с

симплексными

связями

(рис. 3-3)

ха­

рактеризуется

тем, что в ней связь

между элементами

из

различных

уровней

(например,

между

терминалами

Тц,

Тц, ..., Т\Пі,

с одной стороны,

и МК\,

с другой,

или

J 39

Соседние файлы в папке книги из ГПНТБ