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

книги из ГПНТБ / Каган Б.М. Цифровые вычислительные машины и системы учеб. пособие

.pdf
Скачиваний:
97
Добавлен:
27.10.2023
Размер:
29.24 Mб
Скачать

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

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

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

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

ииспользования различия во времени реакции человека

имашины для создания у пользователя иллюзии, что машина полностью принадлежит ему одному, что он

располагает всеми ресурсами

вычислительной системы

и может осуществлять

через

свой

терминал

(телетайп,

электрифицированная

пишущая

машинка,

экранный

пульт и т. п.) прямой

контакт с вычислительной систе­

мой для ввода и пуска своих программ, их отладки, по­

610

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

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

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

В СРВ запросы пользователей на обслуживание по­ ступают в случайные моменты времени. Случайными ве­ личинами оказываются также требуемое для выполне­ ния программы пользователя время работы процессора, каналов и других устройств и необходимый объем опе­ ративной и внешней памяти. В процессе функционирова­ ния СРВ из-за ограниченности ее ресурсов в системе мо­ гут возникать несколько очередей, в том числе: 1) оче­ редь на ввод новых запросов пользователей; 2) очередь к процессору на обработку программ; 3) очередь к кана­ лам связи с периферийными устройствами; 4) очередь на вывод из системы результатов обработки программ. Длина очередей, время пребывания запросов и программ в очередях являются случайными величинами, завися­ щими от параметров вычислительной системы, вероят­ ностных характеристик потока запросов пользователей и их программ, а также от метода планирования работы вычислительной системы.

Качество функционирования СРВ определяется сле­ дующими основными характеристиками: 1) максималь­ ным количеством пользователей, обслуживаемых систе­ мой; 2) средним временем ожидания программой обслу­ живания; 3) средним временем ожидания пользователем ввода нового запроса на обслуживание; 4) потерей вре­ мени в системе, связанной с переключением программ; 5) длиной очередей программ на обслуживание процес­ сором, каналами, устройствами ввода и вывода. Поря­ док распределения между пользователями основного ре­ сурса вычислительной системы — времени процессора

39*

611

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

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

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

612

пользователи имеют различный приоритет в обслужи­

вании.

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

ные и многоочередные.

( т и п а к а ­

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

р у с е л и ) . Соответствующая схема одноочередной СРВ представлена на рис. 11-15. В системе реализуется об-

Д и стами, и онмые пу ль ты

пользователей

Рис. 11-15. Система распределения времени с цик­ лической дисциплиной обслуживания.

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

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

39а—333

613

меньше отношение длительности выполнения программы к кванту времени.

М н о г о о ч е р е д н а я д и с ц и п л и н а о б с л у ж и ­ в а н и я . С целью сокращения потерь времени, связан­ ных с переключением программ, и обеспечения приори­ тета для коротких программ используют дисциплину обслуживания с несколькими очередями (рис. 11-16). Приоритет очереди убывает с возрастанием ее номера т

(

О В н о в ь

поступающий в СРВ запрос ставится

в

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

имеющей старший приоритет ( т = 0).

 

Поток ‘

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

запросов

.закончено

 

Очередь 7

 

1' 1111

Обслуж и­

Г 4

вание

не

закончено

Очередь к

Об ра тн ая связь

Рис. 11-16. Система распределения вре­ мени с многоочередной дисциплиной об­ служивания.

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

Дт = 2тД,

где Ат — квант, выделяемый программе из m-й очереди (О< m ^ :k ); А — квант для программы из нулевой оче­ реди. Обычно А соответствует 200—500 мсек.

Описанный механизм планирования распределения времени обладает определенными адаптивными свой­ ствами: программы с большей длительностью обработки вытесняются в очереди с большими номерами. Этот про­

614

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

по очередям,

используя для этого некоторые оценки.

В первом

приближении

можно считать, что продол­

жительность

выполнения

программы пропорциональна

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

В алгоритме планирования Ф. Корбато, реализован­ ном в одной из первых СРВ [Л. 86], программа сразу поступает в очередь, имеющую номер

і = [log2([LP/L4\ + 1)],

где Lp — количество слов в программе; Lq — количество слов, которое может быть передано из оперативной па­ мяти во внешнюю или обратно за время А; от выраже­ ний, стоящих в квадратных скобках, берется целая часть. В остальном дисциплина обслуживания соответ­ ствует описанной выше. Если во время обслуживания программы из очереди т в очереди с большим приори­ тетом появится новая программа, то после окончания текущего кванта А обрабатываемая программа прерыва­ ется и возвращается в начало очереди т, с тем чтобы впоследствии дополучить недоданное по отношению к ве­ личине А-2т время.

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

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

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

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

39а

615

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

В более сложных случаях СРВ исследуются путем построения так называемой «имитационной модели» и ее анализа методом статистических испытаний (методом Монте-Карло).

Н е п р е р ы в н а я м а р к о в с к а я м о д е л ь С Р В . Построим аналитическую модель для СРВ, в основе которой лежит отождествление функционирования системы с простым непрерывным марковским процессом [Л. 48].

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

вторяющихся этапов, каждый

из которых

делится

на

системную и пультовую фазы.

 

 

 

 

Запрос (программа) пользователя находится в си­

стемной фазе, если в системе имеется вся

необходимая

информация для

обработки

запрошенной

программы.

В этой фазе производится обработка запрошенной

про­

граммы, при этом

время процессора делится

квантами

между всеми программами, находящимися

в

системной

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

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

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

Примем, что случайные величины — время работы пользователя за пультом (т. е. продолжительность пуль-

Ы 6

т о б о й фазы) Тп и продолжительность чистого времени обработки запроса процессором (без учета времени пре­ бывания в очереди к процессору) /0б распределены по экспоненциальному закону со средними значениями со­

ответственно Тц.ср И іоб.ср- В системах без совмещения вычислений с обменом

информацией с внешними устройствами время обмена, соответствующее системной фазе, должно включаться

В/об-

Предполагаем, что переключение программ происхо­ дит мгновенно и издержки, т. е. потери времени, отсут­ ствуют.

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

Примем, что состояние СРВ определяется числом пользователей /, находящихся в данный момент в си­ стемной фазе взаимодействия. Тогда система с п пользователями имеет (n -fl) состояния (0-< /< ;л ). Счи­ таем, что вероятность перехода из состояния / в і зави­ сит только от самих состояний / и і и не зависит от предистории, приведшей систему в состояние /. Сами пере­ ходы совершаются через случайные промежутки вре­ мени.

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

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

стояния с / пользователями в состояние с /+ 1

пользова­

телями в системной фазе

(ожидающими обслуживания)

будет:

 

 

аіи+1) = —

1 ( 0 < / < я - 1 ) .

(11-1)

Т-П.ср

С другой стороны, происходят переходы пользовате­ лей из системной фазы взаимодействия в фазу работы

-617

за пультом. Если бы каждому из / пользователей, нахо­ дящихся в системной фазе, было выделено все время работы процессора, то интенсивность перехода пользова­ телей из активной фазы в фазу работы на пульте соста­ вила ///об.срОднако на самом деле время процессора делится поровну (квантами) между всеми / пользовате-

1

 

1

1

1

1

1

to S c p

 

to ö cp

^oB.cp

toö.cp

tpö.cp

toS.cp

ѲпЬ

 

 

:гвг::

::ГѲ

 

©ögri::

 

 

п *

 

i n-1

n -Z

n -i +1

n -i

•■ 4. 1

Тр.Ср

 

Tn. cp

Tn. cp

Tn. cp

Tn. cp

Tn. cp

Рис. 11-17. Цепь Маркова («процесс гибели и размножения») для системы разделения времени.

лями, и поэтому интенсивность перехода системы из со­ стояния с / пользователями в состояние с /—1 пользова­ телями

«„/-и = 1^об,р О </<«)•

(Н-2)

Функционирование рассматриваемой системы разде­ ления времени может быть описано цепью Маркова для «процесса гибели и размножения», представленной на рис. 11-17. На рисунке указаны интенсивности перехо­ дов системы из одних состояний в другие.

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

ние, что нет

издержек времени на переключение про­

грамм.

 

 

Обозначим

через П = {іто, яі, ...,

згп} вектор предель­

ных вероятностей состояний системы.

Составляющие этого вектора nj

( О ^ /^ п ) есть веро­

ятности пребывания системы в состоянии / в стационар­ ном режиме, причем

=

(П-З)

;=о

 

Составляющие вектора определяются

из системы

уравнений:

 

618

 

‘'П-Ср

JTn

 

 

jti =

0;

 

 

 

 

 

 

п ^об.ср

 

 

 

 

 

Лп

 

 

 

 

— 1

я,

+

------- я2 =

0;

 

^об• ср

 

т п.ср

ъп-ср

 

 

 

 

^об-ср

 

(11-4)

■JT л

 

t

,

 

1

 

 

 

 

•я

= 0:

^об•ср

 

 

Я л - 1

+

С б .с р

п— 2

 

 

 

 

п.ср

 

т п.ср

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

• я'п—1

 

^об-ор

я

=

0.

 

 

 

 

 

 

 

 

 

 

ьп.ср

 

 

 

 

 

 

 

 

Обозначив

^об.ср/тп.ср= 5<, получим

из

(11-4)

 

 

я2 =

я (n — 1) Х2Я0;

 

 

(11-5)

 

 

 

 

 

 

 

 

 

 

 

 

 

я,

=

 

я !

к1я„.

 

 

 

 

 

 

 

 

 

 

Подставляя в (11-3)

(пполученные— t)l

выражения для Яі

(0^-і^.п), получаем:

 

 

 

 

 

 

 

 

£і + п% + п (п1) я2 + • • • + - —

 

x^-f- • •

 

 

 

 

 

 

 

 

(п — /)!

 

 

 

 

 

 

 

-f п\ и" Щ = 1,

 

 

откуда вероятность незанятости процессора в стационар­ ном режиме

Ял —

 

 

1

 

( 11-6)

S

 

n\

/)!

 

 

(п

■yj

Соответственно

І=о

 

-

 

 

 

 

 

 

 

 

я !

 

 

 

я.

( я

і)\

(11-7)

 

 

 

 

 

 

 

я !

 

у.)

 

 

( я

-

/ ) !

 

і=0

 

 

 

 

 

 

Среднее количество пользователей, ожидающих от­ вета,

619

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