3.4.2.       Параллелизм

Параллелизм (или одновременность) может быть введен несколькими способами. Рассмотрим случай двух параллельных процессов, каждый из которых может быть представлен сетью Петри. Таким образом, составная сеть Петри, являющаяся просто объединением сетей Петри для каждого из двух процессов, может представлять одновременное выполнение двух процессов. Начальная маркировка составной сети Петри имеет две фишки, по одной в каждой сети, представляя первоначальный счетчик команд процесса. Это вводит параллелизм, который, однако, не является еще полезным.

Обычный подход основан на введении параллелизма в процесс в вычислительной системе. Здесь имело место несколько предложений. Одно из них использует операции FORK и JOIN, впервые предложенные Деннисом и Ван Хорном [76]. Операция FORK /', выпол-

ияемая в предложении і, приводит к одновременному выполнению текущего процесса, начиная с предложения (I + 1), и вновь созданного процесса — с предложения /. Операция JOIN соединяет два процесса в один или, что равнозначно, уничтожает один из них. Эти операции моделируются в сети Петри, как показано на рис. 3.26.

Другое предложение по введению параллелизма основано на операциях parbegin и parend [79]. Структура управления была предложена Дейкстрой и имеет вид parbegin Si, S2; Sn parend, где St — предложение. Смысл структуры parbegin!parend заключается в параллельном выполнении каждого из предложений Si, S2, ... ..., Sn. Эта конструкция может быть представлена сетью Петри, показанной на рис. 3.27.