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

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

Cтраница 2


Статическая память постоянна и выделяется во время компиляции. Статическое распределение памяти является единственно возможным во многих языках программирования, например в ФОРТРАНе.  [16]

Задача подготовки загрузчика связана с изменением программ, осуществляющих следующие функции: распределение памяти специализированной ЭВМ под готовые программы; вычисление контрольных разрядов команд; вычисление контрольных сумм программ. Несмотря на то что загрузчик кросс-системы производит статическое распределение памяти, действия его нельзя считать тривиальными, что объясняется сложным распределением памяти под области с различным функциональным назначением.  [17]

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

Супервизор с фиксированным числом задач является расширенным вариантом супервизора в режиме решения одной задачи и требует для работы не менее 128 кбайт, но эффективен при наличии оперативной памяти не менее 256 кбайт. Супервизор обеспечивает одновременное выполнение фиксированного числа заданий ( не более 15), которое определяется статическим распределением памяти, получаемым при генерации. Распределение ресурсов вычислительной системы между задачами ведется динамически.  [19]

При статическом распределении памяти размещение массивов информации происходит до начала вычислительного процесса и не изменяется до его конца. Исполнительный адрес операндов указывается либо прямым ( действительным) адресом в команде, либо суммой прямого адреса и индекса, по которому выполняется модификация адресной части команды. Статическое распределение памяти малоэффективно: заранее необходимо выделять большие области памяти из расчета на максимальную длину переменных массивов. Кроме того, такое распределение очень неудобно при многопрограммной работе, когда памятью могут одновременно пользоваться несколько программистов.  [20]

Пришлось переработать лишь интерфейс ввода-вывода RTK, сосредоточенный в трех подпрограммах, что составляет менее двух процентов разработанного для ОС ЕС математического обеспечения. Дополнительно разработан загрузчик программ, позволивший избежать принятого в ДОС ЕС статического распределения памяти под программы.  [21]

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

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

Перевод программы с языка СЛЭНГ на язык машины осуществляется транслятором, управляемым синтаксисом. В качестве выходного языка принят язык машины М-20. С целью уменьшения общего объема информации, программ и массивов, одновременно находящихся в памяти, трансляция осуществляется за два просмотра исходной программы, выполняемых двумя блоками последовательно. При первом просмотре осуществляется перевод программы на языке СЛЭНГ в программу на промежуточном языке, трансляция всех описаний модели и статическое распределение памяти. При втором просмотре осуществляется перевод программы с промежуточного языка на язык машины.  [24]

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



Страницы:      1    2