рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Косвенная коммуникация процессов

Косвенная коммуникация процессов - Лекция, раздел Социология, Лекция: Методы взаимодействия процессов В лекции рассматриваются: взаимодействие процессов: проблема ограниченного буфера При Косвенной Коммуникации (Indirect Communication)Сообщения...

При косвенной коммуникации (indirect communication)сообщения направляются и получаются через почтовые ящики(mailboxes), или порты(ports) системные структуры, предназначенные для приема, хранения и передачи сообщений. Для определенности будем использовать термин почтовый ящик.

Каждый почтовый ящик имеет уникальный идентификатор.

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

Свойства линии связи, согласно списку раздела 9.4, в этом случае следующие:

  • Связь устанавливается, только если процессы имеют общий почтовый ящик.
  • Связь одного процесса может быть установлена со многими процессами (которым доступен тот же почтовый ящик).
  • Каждая пара процессов может иметь несколько линий связи (так как сообщения могут посылаться через различные почтовые ящики).
  • Связь может быть ненаправленной или двунаправленной.

При косвенном способе коммуникации процессы используют набор операций вида:

  • Создать новый почтовый ящик.
  • Отправить (принять) сообщение через почтовый ящик.
  • Удалить почтовый ящик

Основные операции коммуникации принимают вид:

  • send (A, message) – послать сообщение в почтовый ящик A.
  • receive (A, message) – получить сообщение из почтового ящика A.

Как мы видим, в данном случае неиспользуются адреса или имена процессов-корреспондентов; вместо них задаются имена почтовых ящиков.

Чтобы лучше осознать суть и особенности данного метода коммуникации, проведем следующую аналогию. Представьте себе очень привычную для Вас электронную почту, которой Вы пользуетесь каждый день. Вы имеете один или несколько почтовых ящиков (email-адресов) и можете послать через любой из них электронное письмо Вашему корреспонденту. При приеме электронной почты Вы обычно задаете режим типа "receive all"(принять все сообщения со всех адресов), т.е. устанавливаете последовательно несколько линий связи с корреспондентами. Аналогичным образом и взаимодействуют процессы при косвенном способе коммуникации. Понятны и возможные проблемы, и способы их решения в обоих случаях: например, если один адрес (почтовый ящик) не работает, можно попытаться послать сообщение через другой. Однако есть и отличия: при отправке электронной почты через некоторый почтовый ящик Вы все же явно указываете email-адрес получателя. С процессами дело обстоит иначе, из-за чего могут возникнуть проблемы.

Вот возможная проблема, возникающая при использовании общего почтового ящика. Пусть процессы P1, P2,и P3используют почтовый ящик A. P1, посылает сообщение; P2и P3принимают. Возникает вопрос: кто (какой из процессов) получает сообщение? Выражаясь более научно, возникает недетерминированная ситуация, что создает ненадежность и небезопасность. Как решить данную проблему? Вот возможные решения:

  • Ограничить связь только двумя процессами;
  • Разрешить только одному процессу в каждый момент исполнять операцию получения;
  • Разрешить системе произвольным образом определить получателя;
  • Отправитель нотифицируется, кто является получателем.

Очевидно, что каждое из решений имеет свои достоинства и недостатки.

При косвенной связи процессов может оказаться необходимой синхронизация.Дело в том, что передача сообщений может выполняться с блокировкой (синхронно) или без блокировки (асинхронно). Соответственно, основные операции send и receive могут быть с блокировкой или без блокировки.

– Конец работы –

Эта тема принадлежит разделу:

Лекция: Методы взаимодействия процессов В лекции рассматриваются: взаимодействие процессов: проблема ограниченного буфера

В лекции рассматриваются взаимодействие процессов проблема ограниченного буфера проблема производитель потребитель прямая и косвенная связь... Содержание Введение Независимые и взаимодействующие процессы Виды организации взаимосвязи процессов...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Косвенная коммуникация процессов

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Независимые и взаимодействующие процессы
С точки зрения взаимосвязи, процессы подразделяются на независимыеи взаимодействующие. Независимыйпроцесс – процесс, никак не связанный с

Виды организации взаимосвязи процессов
С точки зрения видов взаимосвязи родительского и дочернего процессов, процессы подразделяются на независимые, подчиненныеи сопроцессы.

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

Коммуникация процессов
Рассмотрим теперь возможные механизмы для непосредственной коммуникации процессов и синхронизации их действий. Наиболее распространенный их них - система сообщений; при эт

Непосредственная коммуникация процессов
При непосредственной коммуникации (direct communication)процессы именуют друг друга явно – по именам или по адресам (указателям), которые указываются в вызовах коммуникационных при

Буферизация и очередь сообщений
С коммуникационной линией связывается очередь сообщений, реализованная одним из трех возможных способов: Нулевая емкость очереди сообщенийозначает,

Клиент-серверная взаимосвязь – один из наиболее распространенных видов коммуникации процессов
Используются, в частности, следующие ее разновидности, которые мы и рассмотрим: Сокеты (Sockets) Удаленные вызовы процедур (Remote Procedure Calls – RPC) Удаленные

Ключевые термины
Send– операция отправки сообщения другому процессу. Receive– операция получения сообщения от другого процесса. Взаимодействующий (совмест

Краткие итоги
Процессы могут быть независимыми друг от друга и взаимодействующими. Преимущества взаимодействующих процессов – совместное использование данных, модульность, ускорение вычислений. Дочерний

Вопросы
Что такое независимый процесс? Что такое взаимодействующие процессы? В чем преимущества взаимодействующих процессов перед независимыми? Что такое подчиненный процес

Упражнения
Реализуйте модель механизма сопроцессов с операциями resume / detach. Реализуйте парадигму производитель – потребитель. Реализуйте набор операций непосредственной коммуникац

Темы для курсовых работ, рефератов, эссе
Обзор механизмов взаимодействия процессов (реферат). Сопроцессы (сопрограммы) в различных системах и их взаимодействие (реферат). Парадигма производитель – потребитель (рефе

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги