Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Для узких областей применения в качестве средства межпроцессной коммуникации может быть использован менее общий механизм высокого уровня - система прохождения сообщений.
При определении системы прохождения сообщений обычно применяют конструкцию данных, называемую буфером, которая служит в качестве “почтового ящика” при передаче сообщений.
Один процесс может послать другому процессу сообщение с помощью специальной процедуры, в качестве параметров которой могут быть указаны передаваемое сообщение, почтовый ящик, в который оно должно быть помещено, и приоритет данного сообщения.
Для получения очередного сообщения процесс также должен обратиться к специальной процедуре, указав в качестве параметра почтовый ящик, из которого это сообщение должно извлекаться.
Сам буфер обычно организуется в виде очереди с определенной дисциплиной (обычно - FIFO, но с учетом приоритета). Размер буфера выбирается с учетом предъявляемых требований. Если при передаче сообщения буфер оказывается переполненным, то передающий процесс может быть приостановлен, пока адресат не извлечет сообщение из буфера.
С помощью сообщений можно программировать передачу данных и синхронизацию процессов (сообщения могут рассматриваться как синхронизирующие сигналы). Если же использовать систему передачи сообщений для защиты общих ресурсов, то в данном случае она будет неэффективной, а использующие ее программы будут трудны для понимания.
Дата публикования: 2014-11-29; Прочитано: 403 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!