Студопедия

Главная страница Случайная лекция

Порталы:

БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика






Механизмы передачи данных

Читайте также:
  1. He является препятствием рас­хождение в отношении ккауза» передачи и получения.
  2. I. Создание баз данных
  3. II. Поворотная платформа, механизмы расположенные на ней.
  4. Автоматическая проверка типа данных
  5. Агрегирование данных при выборке
  6. Алгоритм расчета теплопередачи через непроницаемые стенки
  7. Анализ данных.
  8. Анатомо-физиологические механизмы обеспечения безопасности и защиты человека от негативных воздействий
  9. База метаданных информационного хранилища (репозиторий ИХ)
  10. Базы данных

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

· вызов операндов по ссылке (по имени), при котором обращение к данным происходит путем ссылки на их адрес (в языках высо­кого уровня адресу соответствует имя);

· вызов по значению (дублирование данных), при котором копии данных передаются операторам, использующим их для вычислений.

Пусть в процессе выполнения программы, соответствующей информационному графу изображенному на рис.4.1, получен промежуточный результат R2, который в дальнейшем будет использован для выполнения последующих операций. При использовании механизма вызова операнда по ссылке операторы обмениваются информацией посредством общей памяти, которая в нашем случае представляет собой отдельную ячейку, хранящую значение R2. Таким образом, передача операндов между операторами осуществляется с использованием взаимных ссылок к одной области памяти, расстановка которых производится на этапе программирования и компиляции. Механизм ссылок просто реализуется, но ограничивает возможность параллельных вычислений из-за конфликтов, возникающих при одновременном обращении к разделяемой памяти нескольких операторов.

В случае передачи промежуточного результата по значению, отдельные копии R2 в качестве входных операндов D7 и D8 непосредственно передаются во все операторы, использующие значение этого результата. Таким образом, происходит копирование значений результата и пересылка этих копий по адресам назначения, содержащимся либо в команде, породившей результат R2, либо в специальном операторе копирования. Во втором случае оператор передает полученный результат только оператору копирования, который рассылает копии по содержащимся в его списке адресам назначения.

Рассылка операндов при реализации механизма вызова по значению осуществляется в виде сообщений, каждое из которых имеет явное или неявное указание начала и конца, адрес процесса получателя и собственно результат операции. Прием и передача сообщения каким-либо процессом знаменует собой некоторое событие, которое может служить для синхронизации параллельно протекающих процессов. В вычислительных системах, ориентированных на обмен сообщениями, не используется совместно используемая память, что приводит к упрощению синхронизации процессов и уменьшению числа ошибок при программировании, однако для реализации обмена сообщениями требуются специальные аппаратные или программные средства, что приводит к дополнительным затратам аппаратуры и времени.

9 Лекция №8


<== предыдущая страница | следующая страница ==>
УПРАВЛЕНИЕ ПО ЗАПРОСУ | ПРОЦЕССОР ПЕРЕСЫЛОК

Дата добавления: 2014-11-24; просмотров: 231; Нарушение авторских прав


lektsiopedia.org - Лекциопедия - 2013 год. | Страница сгенерирована за: 0.002 сек.