121
Глава 4. Сети Петри
Текущая глава посвящена вопросу создания параллельных
программ на основе сетей Петри. Сети Петри представляют со-
бой аппарат моделирования динамических дискретных систем и
являются одним из наиболее адекватных способов описания
асинхронного выполнения параллельных процессов, в том числе
в распределенных системах.
Следует отметить, что, поскольку сети Петри изначально
предназначены больше для моделирования систем
, представле-
ние на их базе архитектуры проектируемой программной систе-
мы, в том числе параллельной, а также последующая ее реализа-
ция, для некоторых разработчиков оказываются сопряженными с
некоторыми сложностями. Это является следствием не слишком
высокой согласованности этой модели с популярными на теку-
щий момент методами программирования. Мы же здесь покажем,
что,
несмотря на это, они являются более мощным средством по-
строения параллельных вычислений, включающим в себя воз-
можности существующих популярных средств. Кроме того, пред-
ставление вычислительного процесса в виде сети Петри может
быть не привязано к самой реализации ее функционирования и
может быть построено путем выделения подзадач в отдельные
функциональные блоки. На
совести сети Петри в этой ситуации
остается лишь организация последовательности их выполнения и
синхронизация.
4.1 Краткое введение в теорию сетей Петри
Мы не будем сильно углубляться в описание теории сетей
Петри, поскольку это довольно широкая тема, а ограничимся
лишь поверхностным описанием, достаточным для иллюстрации
их использования при построении параллельных программ. Для
более детального ознакомления следует обратиться к специально
посвященной этой теме литературе [11, 15, 21].
4.1.1 Знакомство с сетями Петри
В некотором приближении можно сказать, что сеть Петри
обобщает понятие конечного автомата и добавляет ему некото-