Cтраница 1
Оверлейные структуры применяются в случае, когда объем основной памяти, выделенной для программы, меньше, чем размер программы. Применение оверлейной структуры позволяет поместить программу в выделяемую для нее память, при этом происходит потеря времени при выполнении программы. [1]
Оверлейная структура применяется для больших по объему программ. Оверлейная структура позволяет находиться в оперативной памяти сразу не всем процедурам, а только необходимым в данный момент. Остальные процедуры находятся на диске и загружаются в память по мере необходимости. Этот подход позволяет уменьшить объем требуемой памяти, но увеличивает время работы, так как приходится периодически загружать с диска оверлейные сегменты. [2]
Оверлейная структура обычно представляется в виде дерева. Корнем дерева является сегмент, который всегда находится в оперативной памяти. Другие сегменты содержатся в библиотеке на внешнем носителе и загружаются в память по мере необходимости. Если сегменты вызываются в одно и то же место памяти, то они называются взаимотисключающими. Смена сегментов производится под руководством корневого сегмента. [3]
Оверлейная структура программы позволяет очень эффективно использовать имеющийся объем оперативной памяти. [4]
Планирование оверлейной структуры начинается с определения сегментов - наименьших частей модуля, которые во время выполнения располагаются в памяти как одно целое. Сегмент может состоять из одной или нескольких секций. В один сегмент планируют секции, общие для нескольких цепочек, или секции, участвующие только в одной цепочке. Некоторые из этих сегментов не имеют взаимных связей, и одновременное их присутствие в основной памяти не обязательно. Для загрузочного модуля подобной структуры программист может запланировать оверлейную структуру, представленную на рис. 11.5, в, назначив одинаковый адрес начала загрузки для сегментов С и Dt Е и F с /, G и Я. Необходимо предусмотреть один из сегментов, постоянно находящийся в основной памяти, - корневой сегмент. Корневой сегмент должен содержать секции, общие для всех цепочек структуры. [5]
Модуль оверлейной структуры также состоит из одного загрузочного модуля, подготовленного редактором связей. Однако полностью загрузочный модуль в оперативную память не заносится. Разные сегменты загрузочного модуля могут повторно использовать одну и ту же область оперативной памяти. Состав таких сегментов определяется на стадии редактирования связей, загрузка их в оперативную память производится управляющей программой без специальных команд. Однако при выполнении модуля оверлейной структуры не вызываются другие загрузочные модули, и в этом он уступает модулю динамической структуры. [6]
Наличие оверлейных структур не только усложняет операционную систему, но и вносит элемент, ухудшающий мобильные способности системы. [7]
Модуль оверлейной структуры PRINT состоит из корневого сегмента и двух сегментов перекрытия. [8]
![]() |
Содержание ОП ЭВМ после процедуры начальной загрузки. [9] |
Загрузочный модуль оверлейной структуры создается с помощью редактора связей в условиях жестких ограничений на объем ОП, отводимый для решения задачи, и постоянно хранится на НМД, а во время выполнения помещается в ОП не целиком, а частями - сегментами, которые автоматически вызываются в соответствии с логикой работы алгоритма. Использование загрузочного модуля оверлейной структуры позволяет сократить затраты ОП, но увеличивает время выполнения задачи из-за многочисленных перемещений отдельных сегментов между НМД и ОП. Тем не менее во многих ситуациях такое решение поставленной задачи вполне приемлемо. [10]
Загрузочные области оверлейной структуры в ОС ЕС и ИБМ / 360 могут занимать одну или несколько, не более четырех, непрерывных областей памяти. В некоторых случаях возникает необходимость планирования многообластных структур. Расположить сегменты таким образом, как изображено непосредственно на рис. 11.6, а, Редактор не может, так как он в состоянии включить в загрузочный модуль одну и ту же секцию только один раз, а, следуя структуре связей, от Редактора потребовалось бы троекратное помещение каждой из секций Е, F и G в сегменты, расположенные после сегмента В, после сегмента С и после сегмента D. [11]
Если характеристика оверлейной структуры не задана, но заданы управляющие операторы OVERLAY и INSERT, загрузочный модуль не имеет оверлейной структуры. Загрузочный модуль оверлейной структуры не может быть реентерабельным ( повторно используемым) и обновляемым или иметь формат вразброс. Указание параметра OVLY несовместимо с указанием параметров RENT, REUS, REFR, SCTR. Отсутствие параметра OVLY означает, что создаваемый загрузочный модуль не имеет оверлейной структуры. [12]
Программирование без оверлейных структур в 16-разрядных ЭВМ требует принятия определенных мер по экономии виртуальной памяти. [13]
Здесь не рассматривается оверлейная структура, поскольку ее проектирование осуществляется на уровне редактора связей. [14]
![]() |
Примеры древовидных структур программ.| Пример двухобла-стной оверлейной структуры. [15] |