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

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

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

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

Добавлен: 11.04.2024

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

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

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

включаемые в состав процессора, а также в состав устройств ввода и вывода.

Теперь структура запоминающих устройств для специализиро­ ванных управляющих ЦВМ, включаемых в состав систем управле­ ния движением объектов, представляется в виде сочетания опера­ тивных и постоянных ЗУ, не связанных между собой по передаче массивов информации. Последнее объясняется не только характе­ ром размещения информации в ЗУ указанных типов, но и тем, что быстродействие ОЗУ и ПЗУ примерно одинаково, и они могут непосредственно обмениваться отдельными словами с процессо­ ром, т. е. АУ и УУ, машины.

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

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

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

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

308


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

Рис. 10.1. Общая структура запоминающих устройств

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

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

Общая структура запоминающих устройств при использовании в составе многопрограммной ЦВМ ЗУ трех уровней приведена на рир. 10.1. Первый уровень составляют ПЗУ и ОЗУ, второй — ЗУ на

309.


магнитных барабанах (МБ) и магнитных дисках

(МД), третий —

ЗУ на магнитных лентах (МЛ). Следует отметить,

что на рис. 10.1

показаны только основные связи по обмену информацией; цепи управления обменом здесь не рассматриваются.

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

§ 10.2. Распределение памяти

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

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

310


практически это возможно только в отдельных случаях вследствие ограниченной емкости ОЗУ.

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

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

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

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

Сзадачей собственно распределения памяти связаны проблемы программирования для многопрограммных ЦВМ, организации об­ мена информацией между ЗУ различных уровней, защиты памяти

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

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

С п о с о б ы р а с п р е д е л е н и я п а м я т и

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

311


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

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

( 10. 1)

где Li — длина i-й программы (количество машинных слов, со­ ставляющих г-ю программу);

т — количество параллельно реализуемых программ; Ех— емкость запоминающих устройств первого уровня.

Для специализированных многопрограммных ЦВМ, предназна­ ченных для работы непосредственно в системах управления объек­ тами, постоянное распределение памяти является во многих слу­ чаях единственно возможным. Так, если собственно рабочие про­ граммы размещаются в постоянном запоминающем устройстве, то перераспределение памяти между ними в процессе работы ма­ шины практически невозможно, так как такое ЗУ обеспечивает только выдачу информации, записываемой в процессе изготовления устройства.

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

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

312