Cтраница 4
Блок-схема одновременного определения всех коэффициентов влияния. [46] |
При одновременном определении нескольких коэффициентов влияния с помощью АВМ имеется возможность избежать реализации операторов влияния. Этой возможностью следует пользоваться прежде всего в том случае, когда операторы влияния получаются сложными. [47]
Команда CONDITIONAL RECEIVE не может использоваться запрашивающей ( вызывающей) задачей для реализации оператора отбора языка Ада, поскольку это потребовало бы, чтобы обслуживающая ( вызываемая) задача могла различать, вызвана она через оператор отбора или оператор входа. Такое требование существовало бы, потому что в описании реализации, приведенном в разд. Команда CONDITIONAL SEND также не может быть использована, потому что эта команда успешно завершается ( и, следовательно, инициирует вход), если и только если существует свободное гнездо в фиксированной по длине очереди порта. Это не обязательно гарантирует, что обслуживатель ожидает в очереди и будет сразу же обрабатывать запрос. [48]
Таким образом, техническая реализация алгоритма содержит переключательную схему управления и процессоры для реализации операторов. [49]
Примеры интерпретации некоторых операторов рассмотрены в следующих разделах, здесь ограничимся лишь особенностями реализации операторов. [50]
Обратное преобразование информации из машинных кодов на входной язык отладки позволяет преобразовывать результаты реализации операторов отладки в символы, удобные для анализа, с учетом обозначений, масштабов и маркировки, принятых на входном языке отладки. [51]
Тогда после приостановки может быть инициировано исполнение других процессов и параллельных операторов, а реализация операторов, следующих за оператором wait, продолжится после наступления события, объявленного в этом операторе. [52]
В качестве операторов синхронизации ветвей предлагаются оператор обобщенного условного перехода, который изменяет естественный порядок реализации операторов во всех или некоторых ветвях параллельной программы при выполнении обобщенного условия, и оператор обобщенного безусловного перехода, задающий переход во всех или некоторых ветвях на определенные метки. [53]
Реализация обобщенного распределителя памяти в среде C намного сложнее, чем подразумевают рассмотренные простые примеры, а реализация оператора new в стандартной библиотеке явно не настолько проста, как показано в программе 3.14. Одно из основных различий состоит в том, что функции new приходится обрабатывать запросы распределения области хранения для узлов различного размера - от крохотных до огромных. Для этой цели разработано несколько хитроумных алгоритмов. Эти алгоритмы автоматически удаляют все узлы, на которые не указывает ни одна ссылка. В этой связи также разработано несколько нетривиальных алгоритмов управления областью хранения. Они не будут рассматриваться подробно, поскольку их характеристики быстродействия зависят от свойств определенных компьютеров. [54]