Способ - распределение - память - Большая Энциклопедия Нефти и Газа, статья, страница 3
Ты слишком много волнуешься из-за работы. Брось! Тебе платят слишком мало для таких волнений. Законы Мерфи (еще...)

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

Cтраница 3


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

Отделение аргументов и результатов операторов от обозначающих их величин, введение понятия информационной связи и ее наглядного изображения в виде стрелки от результата к аргументу является наиболее нетривиальной и, вообще, ключевой находкой на нашем пути решения задачи. Через естественно возникающее понятие сечения для линейных программ и через понятие связки как единицы распределения памяти в общем случае мы довольно быстро приходим к полному охвату задачи. Совокупность информационных связей становится важным инвариантом программы, независимым от способов распределения памяти.  [32]

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

Перед выполнением части программы на языке загрузки собираются программой Сборщик в едином цикле. Результат сборки рассматривается как самостоятельная программа на языке загрузки. Собранная программа может быть, в свою очередь, присоединена к любой составляемой программе наравне с другими. Перед выполнением программа на языке загрузки должна быть загружена в выделенное для нее место памяти. Под загрузкой понимается размещение объектов программы в памяти машины в соответствии с принятым в системе программирования способом распределения памяти и соответствующая их настройка. Результатом загрузки является машинная программа, настроенная по месту в памяти. Загрузку программ осуществляет программа Загрузчик, являющаяся частью блока Диспетчер, Монитор. Основным средством автоматизации программирования в системе программирования являются входные языки. Программы могут составляться только на входных языках.  [34]

Отсюда вытекает очень простой способ экономного распределения памяти для алгольных программ, имеющих блочную структуру. Будем считать, что ячейки памяти, отводимые для хранения величин, располагаются сверху вниз, при этом занятый участок памяти находится наверху, а свободный - внизу. Их разделяет рабочая точка. Сначала рабочая точка находится наверху - вся память свободна. Память распределяется при однократном движении слева направо вдоль текста программы. Тогда правило распределения таково: пусть мы при движении по программе проходим открывающую скобку блока В и пусть для размещения величин, локальных в этом блоке, требуется I ячеек. Тогда в момент прохождения открывающей скобки мы сдвигаем рабочую точку на I ячеек вниз и на только что занятом участке размещаем ло-лальные величины блока В. При прохождении закрывающей скобки блока В мы подымаем рабочую точку вверх на те же I ячеек. При таком подходе участок памяти, занятый последним, освобождается первым. Потому-то этот способ распределения памяти называется магазинным - от слова магазин в огнестрельном орудии: там точно так же патрон, снаряженный в магазин последним, выстреливается первым. На рис. 5.3 показан пример магазинного распределения памяти в нашей программе ЭПОС, имеющей развитую блочную структуру. Участки памяти в магазине помечены номерами блоков, к которым они относятся. Тела процедур размножены и подставлены в места их вызова.  [35]



Страницы:      1    2    3