Функция - распределение - память - Большая Энциклопедия Нефти и Газа, статья, страница 1
Второй закон Вселенной: 1/4 унции шоколада = 4 фунтам жира. Законы Мерфи (еще...)

Функция - распределение - память

Cтраница 1


1 Множество загрузки в программе. [1]

Функция распределения памяти должна сохранять постоянное значение на всех парах относящихся к связке, которую Лавров называет областью действия.  [2]

Базовая файловая система выполняет функции распределения памяти на внешних запоминающих устройствах, обеспечивает поиск, защиту и разделение файлов.  [3]

Вне области, отмеченной граничными символами, функции распределения памяти ( А считаются неопределенными.  [4]

Считаем, что граница определяется при задании функции распределения памяти ( А i Е - X. Для удобства полагаем, что граничные элементы содержат особый символ - маркер листьев.  [5]

Операторы new и delete обычно удобней традиционных семейств функций распределения памяти malloc, предоставляемых библиотекой времени выполнения. В отличие от та Нос, операция new автоматически определяет правильный размер объекта и возвращает указатель корректного типа.  [6]

Программа 3.14 является реализацией интерфейса, описанного в программе 3.12, включая функции распределения памяти. При совместной компиляции с программой 3.13 она дает такой же результат, что и прямая реализация, с которой мы начали в программе 3.9. Содержание свободного списка для узлов фиксированного размера - тривиальная задача при наличии базовых операций вставки и удаления узлов из списка.  [7]

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

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

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

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

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

Автоматы работают в синтаксической среде. Таким образом, функция распределения памяти в синтаксической среде всегда постоянна и не меняется в процессе обработки.  [13]

Таким образом, в зависимости от способа реализации объектом подготовки служат либо процедуры анализа и списки, обеспечивающие нужную последовательность их включения, либо списки грамматических правил. Следует отметить, что с точки зрения подготовки предпочтителен второй путь реализации грамматического анализа программ, так как он не связан с перепрограммированием. Семантические процедуры наиболее тесно связаны с синтаксисом языка и становятся объектом изменения при любых его преобразованиях. Функция распределения памяти под локальные переменные полностью зависит от системы адресации к элементам оперативной памяти специализированной ЭВМ. Генерация машинных команд связана главным образом с топологией и длиной форматов машинных команд и констант. Задача подготовки программ, реализующих эту функцию, состоит в том, чтобы адаптировать их к длине и структуре команд.  [14]

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



Страницы:      1    2