Формальное описание алгоритма управления взаимодействующими параллельными процессами в задаче производители-потребители с использованием согласующего кольцевого буфера
В статье рассматриваются вопросы формального описания алгоритма управления синхронизацией параллельных асинхронных процессов при обмене сообщениями в задаче производители-потребители с использованием согласующего кольцевого буфера. Рассматривается простой базовый вариант задачи, когда имеет место один производитель и один потребитель. Формальное описание алгоритма управления процессами базируется на использовании логики недетерминированных автоматов.
Авторы
Тэги
Тематические рубрики
Предметные рубрики
В этом же номере:
Резюме по документу**
Н. П. Вашкевич, Р. А. Бикташев, А. А. Тараканов
ФОРМАЛЬНОЕ ОПИСАНИЕ АЛГОРИТМА
УПРАВЛЕНИЯ ВЗАИМОДЕЙСТВУЮЩИМИ
ПАРАЛЛЕЛЬНЫМИ ПРОЦЕССАМИ В ЗАДАЧЕ
ПРОИЗВОДИТЕЛИ–ПОТРЕБИТЕЛИ С ИСПОЛЬЗОВАНИЕМ
СОГЛАСУЮЩЕГО КОЛЬЦЕВОГО БУФЕРА
В статье рассматриваются вопросы формального описания алгоритма
управления синхронизацией параллельных асинхронных процессов при обмене
сообщениями в задаче производители–потребители с использованием согласующего
кольцевого буфера. <...> Формальное
описание алгоритма управления процессами базируется на использовании логики
недетерминированных автоматов. <...> Процессы взаимодействуют через некоторую
обобщенную область памяти – согласующий буфер сообщений. <...> В работе рассматривается алгоритм функционирования кольцевого согласующего
буфера при обмене сообщениями между производителем и потребителем,
позволивший определить условия, для которых буфер будет полон,
пуст или займет промежуточное состояние. <...> На основании этих условий, общих требований к алгоритму управления
межпроцессного взаимодействия и методики формализации функций
взаимоисключения критических участков [1] строится граф НДА, представляющий
этот алгоритм, с описанием всех основных событий, реализуемых в
алгоритме. <...> Функционирование кольцевого согласующего буфера при обмене
сообщениями между производителем и потребителем
Производитель помещает сообщения в разделяемый кольцевой буфер <...> Информатика и вычислительная техника
и первую пустую ячейку буфера. <...> Эти переменные организуются с помощью
счетчиков буфера записи СчБз и счетчика буфера чтения СчБчт. <...> Показания
счетчика СчБз будут определять номер первой незаполненной (пустой) ячейки,
а счетчика СчБчт – номер первой заполненной ячейки. <...> Для этой цели при
инициализации системы управления в указанные счетчики записываются
единицы, т.е. при t = 0/СчБз = 1; СчБчт = 1. <...> Если принять количество n ячеек в кольцевом буфере, например, равным
8, то счетчики буфера будут <...>
** - вычисляется автоматически, возможны погрешности
Похожие документы: