Cтраница 2
Динамическое распределение памяти означает, что выделение ячеек памяти для размещения данных и программ производится перед началом и в процессе выполнения программ в зависимости от фактических размеров массивов данных и участков программ, а также порядка их использования. При динамическом распределении памяти заранее не известно, какие ячейки ОЗУ будут выделены под массивы данных и программы. Поэтому программирование должно осуществляться только в условных математических адресах. [16]
Динамическое распределение памяти широко используется для экономии вычислительных ресурсов. Те переменные или объекты, которые становятся ненужными, уничтожаются, а освобожденное место используется для новых переменных или объектов. Это особенно эффективно в задачах, в которых число необходимых объектов зависит от обрабатываемых данных или от действий пользователя, т.е. заранее не известно. В этих ситуациях остается только два выхода: заранее с запасом отвести место под множество объектов или использовать динамическое распределение памяти, создавая новые объекты по мере надобности. Первый путь, конечно, неудовлетворительный, поскольку связан с излишними затратами памяти и в то же время накладывает на размерность задачи необоснованные ограничения. [17]
Возможно динамическое распределение памяти с использованием относительной адресации, страничное и сегментное. [18]
Полностью динамическое распределение памяти позволяет иметь единственную сплошную область памяти для всех описанных и рабочих переменных, массивов и процедур программы, а также обеспечивает относительно простой способ обработки рекурсивных процедур. С другой стороны, современные машины обычно имеют несколько индексных регистров, которые существенно облегчают динамическое перераспределение памяти при исполнении программы. По этим причинам на современных машинах часто используют именно динамическое распределение памяти. [19]
Наиболее эффективно динамическое распределение памяти осуществляется в системах виртуальной памяти со страничной или сегментной организацией. [20]
Распределение памяти области очередей и списков. [21] |
Алгоритм динамического распределения памяти основывается на сведении свободных записей в список. Пусть переменная NA определяет адрес первой свободной записи. SP, начальный адрес первой из которых определяется значением переменной NA. [22]
Для динамического распределения памяти процессы в имитационной модели должны рассматриваться подобно блокам АЛГОЛ-программы. Однако эта аналогия неполная. [23]
Две ссылающихся на себя структуры, связанные друг с другом. [24] |
Для динамического распределения памяти необходимо применение функций malloc и free, а также операции sizeof. Указатель void можно присвоить любой переменной-указателю. [25]
Способ динамического распределения памяти, при котором выделяются блоки размером, равным степени 2; соседние свободные блоки равной длины сливаются. [26]
При динамическом распределении памяти в ОП системы может одновременно находиться несколько различных программ. Поэтому для того, чтобы обеспечить сохранность одних программ при работе другой ( например, при попытках записи информации в место памяти, где расположена другая программа) или исключить возможность использования информации, относящейся к другой программе, предусматривается защита памяти. [27]
При динамическом распределении памяти заранее неизвестно, какие ячейки ЗУ будут выделены для размещения информационных массивов. Поэтому программирование может осуществляться только в условных, или логических, адресах. Переход к действительным адресам в процессе реализации программ обеспечивается специальными схемами, выполняемыми в соответствии с принятыми принципами организации и распределения памяти. Итак, использование принципов динамического распределения памяти возможно тогда, когда соответствующая модель ЭВМ Единой системы оснащена необходимыми аппаратно-программными средствами. [28]
При динамическом распределении памяти машина берет на себя функции преобразования адреса виртуальной страницы в адрес физической страницы, по которому располагается требуемое слово, причем оно может храниться как в ОП, так и во внешней памяти. Совокупность адреса физической страницы и адреса слова внутри страницы образует физический адрес операнда. [29]
Состояние стека в случае, когда процедура-функция р дважды обратилась к самой себе. [30] |