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

Реентерабельная подпрограмма

Cтраница 1


Реентерабельные подпрограммы целиком состоят из команд. Все данные, доступные подпрограмме, передаются либо косвенно через регистр, либо они находятся в регистре. Поэтому реентабельные подпрограммы иногда называют программами чистого кода. Преимущество реентерабельных подпрограмм состоит в том, что в системах с разделением времени несколько программ может пользоваться одной и той же копией программы. Для этого требуется при переключении управления с одной программы на другую лишь изменить содержимое регистров, поскольку данные либо содержатся в них, либо регистры указывают на данные. Именно это и делает монитор при переключении управления с одной программы на другую. Применение реентерабельных подпрограмм делает вызывающую программу четкой и ясной. Примерами реентерабельной подпрограммы являются приведенные ранее подпрограмма подсчета битов и подпрограмма вычисления NI. Все данные, на которые ссылаются обе эти подпрограммы, либо находятся в регистрах, либо доступ к ним осуществляется косвенно через регистры. Кроме того, и в той, и в другой подпрограммах не изменяется ни одна команда.  [1]

Являются ли реентерабельные подпрограммы рекурсивными по своей природе. Являются ли рекурсивные подпрограммы реентерабельными.  [2]

Наилучшим способом создания реентерабельных подпрограмм является использование только регистров и стековой памяти для сохранения всех параметров и локальных переменных. При этом осуществляется динамическое перераспределение, насколько это необходимо, пространства памяти, отведенного для параметров и локальных переменных. Подпрограммы, для реализации которых используется стековая структура ( разд. В других случаях, например в системах коллективного пользования, выполнение программ может приостанавливаться и возобновляться в любой точке. Тогда для каждого процесса должны быть обеспечены раздельные области стековой памяти.  [3]

4 ЛЗ. Распределение основной памяти с фиксированными разделами при использовании версии MFT операционной системы IBM 360 / 370. [4]

Резидентно загруженные подпрограммы супервизора и другие реентерабельные подпрограммы часто используются многими программами. Находясь постоянно в основной памяти, они экономят время выполнения, поскольку при обращении к ним их не надо загружать. Они могут также обеспечить экономию памяти, поскольку если нескольким задачам в одно и то же время необходима одна и та же подпрограмма, то достаточно завести только одну общую копию этой подпрограммы, которая будет пригодна для всех задач ( см. также разд.  [5]

Нижеследующая подпрограмма является другим примером рекурсивной и реентерабельной подпрограммы. С ее помощью вычисляются числа Фибоначчи. При этом используется алгоритм, который приводится ниже. Эта последовательность имеет много приложений в математике и вычислительной технике.  [6]

Важными характеристиками подпрограмм ( и любых компонентов ПО) являются реентерабельность и повтор-поиспользуемость. Одна копия реентерабельной подпрограммы может обслуживать одновременно несколько разных вызывающих подпрограмм.  [7]

Какое требование является более строгим для подпрограмм: рекурсия или реентерабельность. Другими словами, ответьте на следующие два вопроса: 1) Гарантирована ли правильная работа всех рекурсивных подпрограмм, если они повторно используются другими процессами. Гарантирована ли правильная работа реентерабельных подпрограмм, если они содержат вызовы самих себя.  [8]

Реентерабельные подпрограммы целиком состоят из команд. Все данные, доступные подпрограмме, передаются либо косвенно через регистр, либо они находятся в регистре. Поэтому реентабельные подпрограммы иногда называют программами чистого кода. Преимущество реентерабельных подпрограмм состоит в том, что в системах с разделением времени несколько программ может пользоваться одной и той же копией программы. Для этого требуется при переключении управления с одной программы на другую лишь изменить содержимое регистров, поскольку данные либо содержатся в них, либо регистры указывают на данные. Именно это и делает монитор при переключении управления с одной программы на другую. Применение реентерабельных подпрограмм делает вызывающую программу четкой и ясной. Примерами реентерабельной подпрограммы являются приведенные ранее подпрограмма подсчета битов и подпрограмма вычисления NI. Все данные, на которые ссылаются обе эти подпрограммы, либо находятся в регистрах, либо доступ к ним осуществляется косвенно через регистры. Кроме того, и в той, и в другой подпрограммах не изменяется ни одна команда.  [9]

Отображение программ таким способом имеет несколько достоинств. Во-первых, во всех программах в системе может использоваться более 32К слов, хотя в некоторых из них может быть занято лишь 32К слов. Программа не обязательно должна занимать последовательные ячейки памяти. Сегменты могут размещаться в памяти в любом порядке и в любом месте, достаточном для хранения сегмента. Применяя реентерабельные подпрограммы или программы, можно в двух программах использовать одну и ту же копию кода посредством отображения его через соответсвую-щие регистры APR в один и тот же сегмент памяти.  [10]

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

Реентерабельные подпрограммы целиком состоят из команд. Все данные, доступные подпрограмме, передаются либо косвенно через регистр, либо они находятся в регистре. Поэтому реентабельные подпрограммы иногда называют программами чистого кода. Преимущество реентерабельных подпрограмм состоит в том, что в системах с разделением времени несколько программ может пользоваться одной и той же копией программы. Для этого требуется при переключении управления с одной программы на другую лишь изменить содержимое регистров, поскольку данные либо содержатся в них, либо регистры указывают на данные. Именно это и делает монитор при переключении управления с одной программы на другую. Применение реентерабельных подпрограмм делает вызывающую программу четкой и ясной. Примерами реентерабельной подпрограммы являются приведенные ранее подпрограмма подсчета битов и подпрограмма вычисления NI. Все данные, на которые ссылаются обе эти подпрограммы, либо находятся в регистрах, либо доступ к ним осуществляется косвенно через регистры. Кроме того, и в той, и в другой подпрограммах не изменяется ни одна команда.  [12]



Страницы:      1